我使用Popen
打开了一个子流程。当我在主程序中按CTRL+C
时,我的子流程就可以使用我为SIGINT
和SIGTERM
注册的处理程序正常关闭。但是:当我尝试手动发送SIGINT
时,会引发signal not supported
错误。发送SIGTERM
会立即终止我的子流程。当我做handle.terminate()
时,我的子流程也就死了。
我需要它优雅地关闭。我搜索并搜索并找不到任何可以通过按CTRL+C
复制行为的内容。
我能做些什么来达到我想要的目标吗?
如标题所述,我使用的是Windows(7 64bit,python 3.4.5)
//编辑:
我也尝试发送CTRL_C_EVENT
这是可能的,但不能在子进程中注册为信号处理程序