各位,我用 C++ 编写的服务器会定期崩溃,但根本不会产生核心转储。
肯定会生成核心转储:“ulimit -c”和“/proc/sys/kernel/core_pattern”设置正确。
奇怪的是,我尝试使用“kill -s SIGSEGV $pid”手动关闭服务器几次,但核心是所有时间都生产。
对于这种奇怪的行为有什么解释和解决方案吗?
答案1
它可能接收到了默认情况下不转储核心的信号。请参阅http://www.kernel.org/doc/man-pages/online/pages/man7/signal.7.html
答案2
看起来我的应用程序被 oom-killer 杀死了...现在我必须调查为什么会发生这种情况 :(