C中得到4号错误(中断),怎么办

简介: C中得到4号错误(中断),怎么办

errno如果是4,表示被中断的系统调用。

怎么办?

  • 自动重启
struct sigaction action;
action.sa_handler = handler_func;
sigemptyset(&action.sa_mask);
action.sa_flags   = 0;
/* 设置SA_RESTART属性 */
action.sa_flags  |= SA_RESTART;
sigaction(SIGALRM, &action, NULL);
  • 忽略信号
struct sigaction action;
action.sa_handler = SIG_IGN;
sigemptyset(&action.sa_mask);
sigaction(SIGALRM, &action, NULL);

注意,这会导致alarm之类的失效。

目录
相关文章
|
6月前
|
调度
中断异常和系统调用
中断异常和系统调用
170 0
|
传感器 调度
什么是中断系统?
一、什么是中断系统 中断系统是计算机系统中的一种机制,它允许外部设备和程序请求处理器的注意力,以便进行特定的操作。当一个中断请求被触发时,处理器会暂停当前正在执行的程序,转而执行与中断相关的程序或服务例程。中断系统可以提高计算机系统的效率和响应速度,因为它允许处理器在等待某些事件的同时执行其他任务。常见的中断包括硬件中断(例如键盘输入、鼠标移动、网络数据传输等)和软件中断(例如操作系统调度、系统调用等)。 二、中断系统的特点 中断系统具有以下特点: 1. 实时性:中断系统能够及时响应外部设备的请求,提高计算机系统的响应速度和效率。 2. 可靠性:中断系统能够保证中断请求的可靠性,确保外部设备的
311 0
|
编译器
中断的解析
中断的解析
105 0
|
存储 程序员 调度
中断和异常
中断和异常
|
存储 芯片 开发者
E906的异常和中断|学习笔记
快速学习 E906的异常和中断
864 0
E906的异常和中断|学习笔记
C中得到4号错误(中断),怎么办
C中得到4号错误(中断),怎么办
96 0
详解中断系统
本文针对地详解了中断系统
282 0
非中断方式实现按键中断2
非中断方式实现按键中断(二) 宏定义 初始化 按键处理 延迟 主函数
125 0