我在Windows上使用Eclipse,使用PyDev插件进行Python开发.当我使用'Run'启动我的应用程序时,它会产生一个新的Python(CPython)实例.当我使用'终止'按钮(红色方块)时,它会终止进程.但是,它似乎执行SIGKILL,因此我的关闭处理程序无法清理.
有没有办法让Eclipse发送SIGTERM,或者从Eclipse控制台模拟键盘中断(ctrl-c)?
注意:我知道还有其他Python IDE,比如Komodo或Wing可以解决这个问题,但我不打算转换它.
Eclipse使用发送信号的Java Process API.这是一个原生API,没有办法改变它.我假设您也试图为SIGKILL安装一个处理程序,但这不起作用.
因此,唯一的解决方案是编写一个小批处理文件,列出进程并将SIGTERM发送给其中一个.从命令提示符调用它.如果你使用Alt-Tab切换到它,它几乎和在Eclipse内部一样舒服.
或者编写一个插件来调用批处理文件.