【发布时间】:2014-11-19 14:49:20
【问题描述】:
我正在尝试编写一个测试来驱动 kill 命令的功能。为此,我需要我的测试目标(一个非常简单的 go http 服务器 - https://github.com/jadekler/git-grunt-gostop/blob/master/test/fixtures/gostop_basic.go)来区分使用 -2 和 -9 进行的杀戮。有没有办法做到这一点?似乎无论 -2 还是 -9,go 的延迟都不会发生,这是我的第一次尝试。随后的研究没有得到启发。
感谢您的任何建议!
【问题讨论】:
-
您是否自己启动了进程,并且想要导致它退出的信号;还是您尝试使用
signal包处理信号? -
嘿 - 感谢您的回复。是的,我自己开始了这个过程,现在我只是想运行
kill -2 <pid>来查看一些结果。编辑:但是,这样做的目的是让外部 javascript 进程启动它,而另一个进程将停止它。 AKA 我无法查看产生该过程的事物的退出代码。 :// -
嗯,非子进程不能
wait,所以无法直接获取退出状态。如果你真的需要退出状态,你需要自己启动它,或者让实际的父进程以某种方式传达它。 -
请注意,您不能捕获 SIGKILL (9):它会导致进程终止,没有机会进行任何特殊处理。