【问题标题】:python run multiple programs in parallel and send signals to thempython并行运行多个程序并向它们发送信号
【发布时间】:2018-07-19 11:27:42
【问题描述】:

我正在编写构建脚本,对于构建步骤,我需要并行运行多个程序。用户可以在任何时候通过发送信号来停止此过程。程序本身正确处理信号。所以我需要的是一种在 python 中启动多个程序的方法,这些程序作为参数传入并将信号传递给它们,一旦所有程序退出,python 脚本就应该结束。我查看了子流程,但找不到任何可以帮助我的东西。

感谢任何帮助。

【问题讨论】:

  • stackoverflow.com/q/4992400/2823755 会不会和你想做的一样?程序期望如何获得信号,监听是什么?
  • 他们没有在听我只是在谈论信号。例如 sigint 或 sigusr。

标签: python python-2.7 subprocess


【解决方案1】:

也许你可以使用线程和队列来做这个,停止你可以做

try:
   #you code
except KeyboardInterrupt: break

如果用户使用 ctrl + c 给一个 KeyboardInterrupt 并停止所有。

【讨论】:

  • 不,我需要使用信号并将其注入子进程。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-08-21
  • 1970-01-01
  • 2023-03-23
  • 2022-11-23
  • 1970-01-01
  • 1970-01-01
  • 2015-04-11
相关资源
最近更新 更多