为什么要进行多处理。流程没有send_signal方法?



与子流程不同。Popen,多处理。进程没有send_signal方法。为什么?有没有推荐的方法可以将SIGINT这样的信号发送到多处理。过程我应该使用os.kill((吗?提前谢谢。

你的第一个问题完全有意义
I认为这是因为multiprocessingsubprocess库有不同的设计目标(正如这个答案所解释的(:前者用于使多个Python脚本在不同的CPU上协作以实现一个共同的任务,而后者用于在Python程序中集成外部程序。因为IPC(进程间通信(在协作的Python多进程之间(有队列和管道,您可以将Python对象作为参数传递,…(比使用外部程序要容易得多,因为我们只能假设外部程序遵守OS接口(文本stdin/stdout应该正确处理信号,…(。
与另一个进程通信的默认方式因此,多进程不是一个操作系统信号,因此集成它被认为没有用处。
还请记住,(C(Python是开放源码的,所以您可以自己贡献这种集成。

至于你的第二个问题,已经有了答案(cf如何从python程序发送信号?(,是的:

使用os.kill()

相关内容

  • 没有找到相关文章

最新更新