让Ruby识别子进程是否会出现段错误

时间:2015-06-19 14:19:55

标签: ruby linux segmentation-fault

我在RH5中运行Ruby作为EDA工具的包装器。
该工具是segfaulted。但是,命令行没有显示任何指示。只有在运行Ruby启动的命令时,我们才知道发生了段错误。如何在包装器中获取段错误消息? 感谢。

1 个答案:

答案 0 :(得分:1)

来自Kernel#system documentation

  如果命令给出零退出状态,则

系统返回true,对于非零退出状态,系统返回false。如果命令执行失败,则返回nil。 $?中有错误状态。

因此,如果您只是想确保一切正常,那么您只需检查system的返回值是否为true。如果您想要专门检查是否存在细分错误,则返回值为false$:将如下所示:

puts $?
#=> pid 3658 SIGSEGV (signal 11)