Dum*_*001 24
在Linux中是否有任何命令可以通过它来了解进程是否处于挂起状态.
没有命令,但是一旦我不得不做一个非常愚蠢的黑客来完成类似的事情.我写了一个定期的Perl脚本(在我的情况下每30秒):
ps以查找被监视进程的PID列表(以及执行时间等)gdb使用其PID 开始附加到进程,使用从中转储堆栈跟踪thread apply all where,从进程中分离但这是非常非常非常粗暴的黑客,为了达到一个即将错过的截止日期,几天后,在最终安装了错误的应用程序修复后,它被删除了.
否则,正如所有其他响应者完全正确地评论一样,无法确定进程是否挂起:仅仅因为挂起可能由于多种原因而发生,通常绑定到应用程序逻辑.
唯一的方法是应用程序本身能够指示它是否存活.最简单的方法可能是例如定期日志消息"我还活着".