【发布时间】:2011-10-17 06:52:48
【问题描述】:
我不明白如何开始使用multiprocessing.Process。我使用了以下示例代码:
import random, time
import multiprocessing
def frz(no, tm):
a = 'start ' + str(no)
print(a)
time.sleep(tm)
a = str(no) + '=====> '+ str(tm) +'\n'
print(a)
if __name__ == '__main__':
freeze1 = random.randint(1, 5)
freeze2 = random.randint(1, 5)
freeze3 = random.randint(1, 5)
freeze4 = random.randint(1, 5)
freeze5 = random.randint(1, 5)
trd1 = multiprocessing.Process(target=frz, args=(1, freeze1))
trd2 = multiprocessing.Process(target=frz, args=(2, freeze2))
trd3 = multiprocessing.Process(target=frz, args=(3, freeze3))
trd4 = multiprocessing.Process(target=frz, args=(4, freeze4))
trd5 = multiprocessing.Process(target=frz, args=(5, freeze5))
#threading
trd1.start()
trd2.start()
trd3.start()
trd4.start()
trd5.start()
当multiprocessing.Process 被threading.Thread 替换时,该函数工作正常,但多处理似乎没有任何反应。
【问题讨论】:
-
我有同样的问题,我在同一个网站上发布了一个类似的问题here。
标签: process python-3.x parallel-processing multiprocessing simultaneous