gpt4 book ai didi

python - 如何在使用 multiprocessing.Pool #python 时停止对 KeyboardInterrupt 的执行

转载 作者:太空宇宙 更新时间:2023-11-04 06:22:02 35 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Keyboard Interrupts with python's multiprocessing Pool

Python 的多处理模块有一个叫做 Pool http://docs.python.org/library/multiprocessing.html#module-multiprocessing.pool 的东西。

当进程池正在运行时,我无法使用 KeyboardInterrupt 即 Ctrl + c 来终止脚本。该池会生成新进程,退出的唯一方法是 ctrl + z,然后手动杀死它们。

这是我用来测试它的脚本:

import multiprocessing
import random
import time

def sometask(arg):
#do something nasty to arg
time.sleep(arg)
return random.randint(0,arg)

if __name__=="__main__":
pool = multiprocessing.Pool(processes=4)
print pool.map(sometask, range(10))

我的主脚本试图做一些比 time.sleep() 更耗时的事情,每次我尝试测试运行它时,我都必须等待它完成或通过首先找到它产生的过程。请提出解决方法。

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com