Yoav Asked: 2010-03-18 01:33:27 +0800 CST2010-03-18 01:33:27 +0800 CST 2010-03-18 01:33:27 +0800 CST 在 Linux 中监视和终止挂起的进程 772 我正在编写一个脚本,该脚本运行许多同时运行“dig”命令的进程。偶尔(相对罕见,但自从我多次运行 dig 以来每次运行都会发生)dig 命令以 0% 的 CPU 挂起。因此,我的脚本永远不会终止。我为我运行的每个 dig 命令创建了一个监视进程,它会在一段时间后终止它,但我想知道是否没有更简单、更有效的方法来运行具有预定“到期日期”的进程,即,如果进程运行超过 X 秒,它会收到一个终止它的信号。 谢谢! linux process posix 3 个回答 Voted user37990 2010-03-18T04:59:52+08:002010-03-18T04:59:52+08:00 您可以使用超时命令: 超时 30 秒 my_command my_args 有关详细信息,请参见手册页。 The Unix Janitor 2010-03-18T02:50:36+08:002010-03-18T02:50:36+08:00 问题是为什么你的挖掘过程是第一位的。尝试在 ltrace 和 strace 等调试工具下运行它,甚至在 ddd 下运行它,看看它为什么会挂起。如果您发现任何不寻常的东西将其发布为错误,这是开源软件变得更好的唯一方法。 Dig 应该超时,但是您的网络上可能会出现问题。 user37841 2010-03-18T06:32:01+08:002010-03-18T06:32:01+08:00 您还可以尝试超时选项dig,例如+time=T,+tries=T etc. see thedig` 手册页以获取更多信息
您可以使用超时命令:
超时 30 秒 my_command my_args
有关详细信息,请参见手册页。
问题是为什么你的挖掘过程是第一位的。尝试在 ltrace 和 strace 等调试工具下运行它,甚至在 ddd 下运行它,看看它为什么会挂起。如果您发现任何不寻常的东西将其发布为错误,这是开源软件变得更好的唯一方法。
Dig 应该超时,但是您的网络上可能会出现问题。
您还可以尝试超时选项
dig
,例如+time=T
,+tries=Tetc. see the
dig` 手册页以获取更多信息