为了账号安全,请及时绑定邮箱和手机立即绑定

进程何时获得SIGABRT(信号6)?

进程何时获得SIGABRT(信号6)?

C++
慕桂英4014372 2019-08-06 17:24:11
进程何时获得SIGABRT(信号6)?进程在C ++中获取SIGABRT的场景是什么?此信号是否始终来自过程中,或者此信号是否可以从一个过程发送到另一个过程?有没有办法确定哪个进程正在发送此信号?
查看完整描述

3 回答

?
呼唤远方

TA贡献1856条经验 获得超11个赞

abort()发送调用进程SIGABRT信号,这abort()基本上是如何工作的。

abort()通常由库函数调用,它检测内部错误或严重破坏的约束。例如,如果其内部结构被堆溢出损坏,malloc()则将调用abort()它。


查看完整回答
反对 回复 2019-08-06
?
慕标琳琳

TA贡献1830条经验 获得超9个赞

SIGABRTlibc和其他库通常使用它来在出现严重错误时中止程序。例如,glibc SIGABRT在检测到双重释放或其他堆损坏的情况下发送。

此外,大多数assert实现都SIGABRT在断言失败的情况下使用。

此外,SIGABRT可以像任何其他信号一样从任何其他进程发送。当然,发送过程需要以相同的用户或root身份运行。


查看完整回答
反对 回复 2019-08-06
  • 3 回答
  • 0 关注
  • 1468 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信