我是靠谱客的博主 魁梧画笔,最近开发中收集的这篇文章主要介绍linux app 无 core dump 退出的处理,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

 

1,首先要淡定。
2,在程序退出之后马上echo $?,获得返回数字R。
3,计算信号码和退出码:
 R & 0x7f = signal_no
 (R & 0xff00) >> 8 = exit_no
4,这时就知道程序何故退出了。

至于我的状况,就是没有处理SIGPIPE,what a shame.
Add the following code and the app will be fine:
struct sigaction sa;
sa.sa_handler = SIG_IGN;
sigaction(SIGPIPE, &sa, 0);

Why here use sigaction() other than signal() ?
Someone said that in the latter case the designated signal handler may reume the default one when the signal was catched one time, so now you know why sigaction() was a better choice.

最后

以上就是魁梧画笔为你收集整理的linux app 无 core dump 退出的处理的全部内容,希望文章能够帮你解决linux app 无 core dump 退出的处理所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(54)

评论列表共有 0 条评论

立即
投稿
返回
顶部