如何将CTRL + C / SIGINT发送到Windows中的子进程?

时间:2016-11-23 10:57:45

标签: python windows signals

我使用Popen打开了一个子流程。当我在主程序中按CTRL+C时,我的子流程就可以使用我为SIGINTSIGTERM注册的处理程序正常关闭。但是:当我尝试手动发送SIGINT时,会引发signal not supported错误。发送SIGTERM会立即终止我的子流程。当我做handle.terminate()时,我的子流程也就死了。

我需要它优雅地关闭。我搜索并搜索并找不到任何可以通过按CTRL+C复制行为的内容。

我能做些什么来达到我想要的目标吗?

如标题所述,我使用的是Windows(7 64bit,python 3.4.5)

//编辑: 我也尝试发送CTRL_C_EVENT这是可能的,但不能在子进程中注册为信号处理程序

0 个答案:

没有答案