【发布时间】:2017-05-27 08:53:34
【问题描述】:
如何让我的程序在被杀死时显示回溯/调用者?
我有一个不属于我的 gem 中的无限循环问题,我需要知道问题出在哪里来报告它
def hello
puts 'hello'
end
def test
while true
sleep 2
hello
end
end
test
在这个例子中,当一个终止信号被发送到程序时,我想知道程序在做什么(显示调用者)
目前,我在输出中显示的只是“Killed”
【问题讨论】:
-
我会试试
at_exit { puts caller.inspect }也许有帮助 -
不,它不起作用,我仍然只在术语上显示“Killed”字符串,仅此而已
-
你使用的是 sigterm 还是 sigkill (9) ?
-
使用 htop 和 sigkill 选项。但如果可能的话,我希望它与 Windows 兼容(不知道它使用什么)
-
为 Linux 说话。只有具有进程的真实或有效用户 ID 或 root 的用户才能向进程发送信号。因此,您的防病毒软件一切正常。