概述
由于在项目和个人测试程序中经常用到,因此在这里备份下,以后每次来抄
/*---------------------------------------------------------------------------*/
/**
* @brief termination_handler
*/
void termination_handler(int signum)
{
signal(signum, SIG_DFL);
raise(signum);
}
/*---------------------------------------------------------------------------*/
/**
* @brief install_signal_handler
*/
void install_signal_handler()
{
struct sigaction sig_action;
sig_action.sa_handler = termination_handler;
sigemptyset(&sig_action.sa_mask);
sig_action.sa_flags = 0;
sigaction(SIGINT, &sig_action, NULL);
sigaction(SIGHUP, &sig_action, NULL);
sigaction(SIGABRT, &sig_action, NULL);
sigaction(SIGTERM, &sig_action, NULL);
}
/*---------------------------------------------------------------------------*/
/**
* @brief main
*/
int main(int argc, char** argv)
{
install_signal_handler();
while(true);
return 0;
}
最后
以上就是默默八宝粥为你收集整理的linux C++注册程序退出信号处理的代码的全部内容,希望文章能够帮你解决linux C++注册程序退出信号处理的代码所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复