0
我在玩Python的多处理模块。我开始这个程序:为什么我的过程按顺序执行?
import multiprocessing
def worker(num):
"""thread worker function"""
print 'Worker:', num
return
if __name__ == '__main__':
for i in range(5):
p = multiprocessing.Process(target=worker, args=(i,))
p.start()
令我惊讶的是,结果总是这样:
Worker: 0
Worker: 1
Worker: 2
Worker: 3
Worker: 4
我会想到的是,工人们以不同的顺序输出不时,但从来没有无论我运行该程序多少次都会发生。我误解了什么?
这些进程是按顺序启动的,而不是同时启动。 –
@ IgnacioVazquez-Abrams您的评论可能会误导您。请参阅下面的Reut的答案。 – zell
添加随机睡眠不会使我的评论无效。 –