成人视屏在线观看-国产99精品-国产精品1区2区-欧美一级在线观看-国产一区二区日韩-色九九九

您的位置:首頁技術文章
文章詳情頁

Python多進程池。當工作進程之一確定不再需要執行更多工作時,如何退出腳本?

瀏覽:4日期:2022-08-07 10:12:51
如何解決Python多進程池。當工作進程之一確定不再需要執行更多工作時,如何退出腳本??

您可以使用中的回調Pool.apply_async。

這樣的事情應該可以為您完成工作。

from multiprocessing import Pooldef part_crack_helper(args): solution = do_job(args) if solution:return True else:return Falseclass Worker(): def __init__(self, workers, initializer, initargs):self.pool = Pool(processes=workers, initializer=initializer, initargs=initargs) def callback(self, result):if result: print 'Solution found! Yay!' self.pool.terminate() def do_job(self):for args in product(seed_str, repeat=4): self.pool.apply_async(part_crack_helper, args=args, callback=self.callback)self.pool.close()self.pool.join()print 'good bye'w = Worker(num_proc, init, [total_count])w.do_job()解決方法

mp.set_start_method(’spawn’)total_count = Counter(0)pool = mp.Pool(initializer=init,initargs=(total_count,),processes=num_proc)pool.map(part_crack_helper,product(seed_str,repeat=4))pool.close()pool.join()

因此,我有一組工作人員在做一些工作。它只需要找到一個解決方案。因此,當一個工作進程找到解決方案時,我想停止一切。

我想到的一種方法是只調用sys.exit()。但是,由于其他進程正在運行,因此似乎無法正常工作。

另一種方法是檢查每個進程調用的返回值(part_crack_helper函數的返回值),然后在該進程上終止調用。但是,我不知道在使用該map函數時該怎么做。

我應該如何實現?

標簽: Python 編程
主站蜘蛛池模板: 午夜视频一区二区三区 | 免费高清国产 | 亚欧成人 | 国产在线观看高清不卡 | 欧美在线亚洲国产免m观看 欧美在线一级精品 | 欧美日韩中文国产一区二区三区 | 一区二区三区视频在线观看 | 中文字幕有码在线播放 | 91精品欧美一区二区综合在线 | 免费网站18| 天堂视频免费看 | 精品视频在线免费播放 | 免费中文字幕 | 99久久免费观看 | 欧美黄色特级视频 | 香蕉99国内自产自拍视频 | 色三级大全高清视频在线观看 | 欧美日韩视频免费播放 | 欧美一级视 | 亚洲视频网站在线观看 | 久久精品国产精品青草不卡 | 国产在线一区二区三区在线 | 国产成人综合在线视频 | 91精品欧美一区二区三区 | 日本波多野结衣视频 | 亚洲视频在线观看免费视频 | 国产成人18 | 一个人的视频日本免费 | 伊人黄网 | 国产亚洲精品一区二区久久 | 国产精品变态重口在线 | 在线观看日本永久免费视频 | 看一级毛片一区二区三区免费 | 视频一区久久 | 精品久久中文网址 | 日本特级黄毛片毛片视频 | 一级毛片成人免费看免费不卡 | 美女一级毛片免费看看 | 网禁呦萝资源网站在线观看 | 国产黄色免费网站 | 亚州色吧|