2

java.lang.Process 有一个名为 destroy() 的方法。文件说:

此 Process 对象所代表的子进程被强制终止。

我想知道调用 destroy() 时发送的是哪个信号?

我正在使用 Linux。

4

2 回答 2

3

我假设“调用破坏时发送哪个信号?” 您指的是实际的系统调用。(我不能评论你的主要问题还需要你确认)

在快速浏览了 ProcessBuilder 的 OpenJDK 实现源之后,我发现实际调用最终是一个本地调用 ..(好吧,不!:p)

从适当的方法查看本机源代码后:

  • Windows: TerminateProcess((HANDLE) 句柄, 1);
  • UNIX:杀死(pid,SIGTERM);

希望有帮助!

于 2012-05-04T10:04:12.290 回答
1

从谷歌搜索它建议使用 SIGTERM 。我找不到这方面的参考,但这似乎是合理的。

于 2012-05-04T09:57:10.397 回答