【python】threading多线程学习 (一)

这块相比较nodejs应该更容易理解一些,后面有时间会进行对比分析下。

  • threading
  • start()
  • join()
  • threading.active_count() 激活线程数量
  • threading.enumerate() 线程详情
  • threading.current_thread() 当前线程

python创建多线程方法也很简单

import threading
import time

def work_first():
	print('start first');
	for x in range(10):
		time.sleep(0.2);
	print('stop first');

def main():
	first = threading.Thread(target=work_first); #创建一个现成
	first.start() #执行该线程
	print('main progress')


if __name__ == '__main__':
	main()

看下执行结果
在这里插入图片描述
如果顺序执行的话需要使用join()方法

first.start()
first.join()
print('main progress')

执行结果
在这里插入图片描述
多个线程类似:

import threading
import time


def work_first():
	print('start first');
	for x in range(10):
		time.sleep(0.2);
	print('stop first');

def work_second():
	print('start second');
	for x in range(10):
		time.sleep(0.1);
	print('stop second');


def main():
	first = threading.Thread(target=work_first);
	second = threading.Thread(target=work_second);
	first.start()
	first.join()
	second.start()
	second.join()
	print('main progress')

if __name__ == '__main__':
	main()

执行结果
在这里插入图片描述

发布了77 篇原创文章 · 获赞 5 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/uk_51/article/details/89685010
今日推荐