我正在使用Eclipse进行Node.js开发,以及Nodeclipse插件。我很想知道,对于通过Eclipse启动的node.js程序,当按下控制台中的停止图标时,Eclipse如何停止进程? 我的node.js程序有SIGINT和SIGTERM的信号处理程序 - 但是,当从Eclipse终止进程时,它们不会被调用。
Eclipse甚至会发送其中一个信号吗?如果没有,Eclipse如何终止进程?有没有办法影响这个?
答案 0 :(得分:1)
当您单击控制台视图中的红色按钮时,Eclipse会终止外部程序。更具体地说,它使用Process.destroy()
方法。
有关解释,请参阅此bug。
即使这种方法理论上可以优雅地终止进程,但实际上这会导致在UNIX下发送SIGKILL
。
答案 1 :(得分:0)
Nodeclipse没有任何特殊逻辑,即Eclipse终止。 据说这个过程被杀死了。我不知道在不同的操作系统上是如何实现的。要在Eclipse论坛上找到问题或者获取Eclipse for Commiters并尝试调试。