使用信号处理在Linux中Ctrl+C后出现 SIGINT 信号
发布时间
阅读量:
阅读量
在实际编程过程中,我们编写的程序常常需要持续运行。当进行调试时,通常通过按下ctrl+c来强制结束程序执行。然而,在这种情况下,位于while循环之后的close函数调用,若未预先设置中断处理机制,则无法被正常触发和执行。
错误例子
#include <iostream>
#include <unistd.h>
using namespace std;
int main()
{
while(1){
//sleep(1);
}
printf("closing\n");
}
执行编译与运行操作后,使用ctrl+c所得到的结果显示:(不会输出closing相关信息)
cwd@cwd:~/code/test$ g++ test.cpp -o test
cwd@cwd:~/code/test$ ./test
^C
应对这一问
全部评论 (0)
还没有任何评论哟~
