我想在我的C ++应用程序中的特定位置强制进行核心转储。
我知道我可以通过执行以下操作来做到这一点:
int * crash = NULL; *crash = 1;
但是我想知道是否有更清洁的方法?
我正在使用Linux。
提高信号号6(SIGABRT在Linux中)是一种方法(尽管请记住,并非所有POSIX实现中SIGABRT都 必须 为6,因此,SIGABRT如果不是quick’n,则可能需要使用值本身’脏调试代码)。
SIGABRT
#include <signal.h> : : : raise (SIGABRT);
调用abort()也会导致核心转储,你甚至可以做到这一点 _,而不_通过调用终止你的过程fork(),然后abort()在子-
abort()
fork()