繁体   English   中英

当任何一个进程完成时,如何终止池?

How to terminate a pool when any of the processes finishes?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我已按照建议使用以下代码,但在第一个工作人员找到匹配项后,池仍未终止。 理想的结果是让20个进程运行函数f,并且当它们中的任何一个找到匹配项时,池都应终止,而实际上,我必须等到所有工作人员都找到一个匹配项时才发生。

from multiprocessing import Pool
import numpy as np


def f(z):..Output omitted


class Worker():
    def __init__(self, workers):
        self.pool = Pool(processes=workers)

    def callback(self, result):
        if result:
            self.pool.terminate()

    def do_job(self):

        self.pool.map_async(f,range(1,20), callback=self.callback)
        self.pool.close()
        self.pool.join()


if __name__=="__main__":
    w = Worker(20)
    w.do_job()
问题暂未有回复.您可以查看右边的相关问题.
1 当其他进程完成时如何终止一个进程?

我创建了三个函数,第一个函数创建了倒数计时器,另外两个函数找到了素数。 我正在使用multiprocessing使它们一起执行。 我想做的是当计时器完成时,其他两个进程也将终止。 其他两个函数将继续搜索素数,直到计时器结束,例如,如果计时器设置为 1 分钟,则这些函数将继续搜索素数一分钟。 现在代 ...

2 一个进程终止,其他进程同时完成I / O

我在操作系统类测试中遇到了这个问题。 问题说: 考虑在P2具有最高优先级的系统上运行三个进程P0,P1,P2。 当前进程P1处于运行状态,P0在就绪队列中等待,P2正在执行I / O操作。 假设在下一个时间步中,P1终止,P2同时完成I / O。 逐步列出将下一个进程分配给CP ...

5 当另一个子进程完成时如何终止子进程?

我有一个看起来像这样的代码段: 从某种意义上说,这很好用,我可以看到正在调用和运行的进程。 但是,我的问题是last一个进程有一个无限循环,当进程first终止时,它仍然保持运行。 C 中是否有一种方法可以在进程first完成时强制last进程在此处终止? ...

6 当第一个在 python3 中完成时,如何终止并行进程?

问题:如何在进程号 1 完成后停止进程号 2? 更长的版本:我制作了一个多进程 2 个函数的脚本,但我真的不知道如何在第一个进程完成后停止第二个进程。 我的代码: 我尝试了一个 while 循环来检查p1.is_alive == False的时间,然后我应该终止进程 2,但它没有用。 我也搜索了答 ...

7 如何让一个进程终止其他进程?

我正在尝试与MPI并行化一个“搜索问题”,在那里你迭代几个元素并检查它们是否验证某个属性,如果有的话(其中几个可以验证属性,但你只需要一个)你返回它并完成了。 在对代码进行并列化时,我在进程之间拆分元素,但是,当找到一个元素时,我希望其他进程停止搜索,因此不会浪费时间。 我已经尝试过使用 ...

2019-06-10 21:10:54 0 48   c++/ mpi
8 进程池:一个进程完成后自动添加一个进程

我有一个创建进程“池”并执行池中每个进程的函数。 executePybotTest(仅调用子流程来执行命令): 我正在使用它来并行运行自动化测试。 但是由于加入了该池,因此它等待池中的所有进程完成以继续执行其他等待执行的项目。 我正在研究实现一个队列,并在池中的进程之一完 ...

9 如何让两个进程完成一个任务,谁先完成任务,再终止另一个

我正在寻找一种创建 2 个同等子进程的好方法,这将完成 1 个任务 - 分别排序,一个与另一个,一个数组,其中包含具有不同算法的数字数据,例如Merge-Sort和QuickSort 。 完成任务的第一个进程应该终止另一个进程(并打印结果) 还有哪一种是将数据传输到流程的最佳方式(管道?) 还有什么 ...

10 终止一个非终止进程

我正在使用纯Java“ blackBox”处理图像,可通过以下方式表示: 这是一个循环: 几乎所有进程都在2到5秒内终止,但是有一些进程(也许2%)运行了几分钟,而有些似乎没有终止(我不知道为什么)。 我想在(例如)30秒后终止这些操作,记录病理图像,然后移至下一个。 bla ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM