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
添加隨機睡眠不會使我的評論無效。 –