我有一个问题,我的应用程序在几天/几周后继续转储核心,但不幸的是,没有生成核心转储。
我们尝试设置ulimit -c unlimited
但没有成功,因此我们setrlimit
在代码本身中加入了功能,但这种方法也没有运气。而且,除此之外,我们还添加了 MALLOC_CHECK_。
有趣的是,当我们尝试启动手动核心转储(使用kill -ABRT <pid>
)时,它确实生成了核心转储。
我可以看到以下消息/var/log/message
内核:[2302077.396021] myapp [22140]:段错误在 54552e42 ip 00000000f773f36f sp 00000000fffdc48c 错误 4 in ld-2.11.3.so [f7727000+1f000]
环境:sles11
关于如何使应用程序更可靠地生成核心转储的任何建议?