【问题标题】:Difference between raise(SIGABRT) and abort() methodsraise(SIGABRT) 和 abort() 方法之间的区别
【发布时间】:2013-12-11 08:25:36
【问题描述】:

我知道raise(SIGABRT)abort() 方法都会向自身发送一个SIGABRT 信号。但这两个功能之间存在一些差异。 (例如 - abort() 函数会解除对 SIGABRT 信号的阻塞,而 raise(SIGABRT) 不会。)

raise(SIGABRT)abort() 方法之间的其他区别是什么

【问题讨论】:

  • 阅读 raiseabort 系统调用的手册页。

标签: c++ c posix sigabrt


【解决方案1】:

主要区别在于,如果 SIGABRT 被忽略,abort() 甚至会结束进程。

man abort逐字逐句:

如果 SIGABRT 信号被忽略,或被返回的处理程序捕获,abort() 函数仍将终止进程。它通过恢复 SIGABRT 的默认配置然后为 第二次。

【讨论】:

    猜你喜欢
    • 2013-10-29
    • 2017-03-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-15
    • 2011-02-02
    • 1970-01-01
    相关资源
    最近更新 更多