Python多线程上一篇参考:理解Python多线程:通过易懂的小例子展开「第一篇」
要想深刻理解多线程,必须首先建立一个概念:执行代码的CPU资源,被操作系统轮询分配算力。
为了更好解释,假定计算机是单核的,尽管对于cpython
,这个假定有些多余。
我们在当前进程中,开辟3个线程,装到threads
中:
import time
from datetime import datetime
import threading
def print_time():
for _ in range(5): # 在每个线程中打印5次
time.sleep(0.1) # 模拟打印前的相关处理逻辑
print('当前线程%s,打印结束时间为:%s'%(threading.current_thread().getName(),datetime.today()))
threads = [threading.Thread(name='t%d'%(i,),target=print_time) for i in range(3)]
启动3个线程:
[t.start() for t in threads]
打印结果如下,t0
,t1
,<