我正在下面的例子从Doug Hellmann教程多:多重炸弹
import multiprocessing
def worker():
"""worker function"""
print 'Worker'
return
if __name__ == '__main__':
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
当我试图if语句之外运行它:
import multiprocessing
def worker():
"""worker function"""
print 'Worker'
return
jobs = []
for i in range(5):
p = multiprocessing.Process(target=worker)
jobs.append(p)
p.start()
它开始产卵过程不停,唯一的办法就是重新启动!
为什么会发生这种情况?为什么它没有生成5个进程并退出?为什么我需要if语句?
现在知道了,它花了我2次重新启动后很有趣;) – 2010-04-23 10:06:32
一旦启动它,你会如何阻止它?在任务管理器中杀死进程似乎没有影响它。 – 2010-04-23 10:14:29
POSIX系统中有限制和killall,但我不知道Windows的解决方案。 – 2010-04-23 10:26:05