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

热门文章

最新文章