C 当收到信号时,睡眠功能将中止?
我想知道为什么,在我看来,无论输入多少次Ctrl+C,程序都应该在10秒后终止 sleep()是在中断时不会重新启动的函数之一 有趣的是,它也不会像人们预期的那样返回EINT 相反,它在剩余的睡眠时间内返回成功 见: 有关中断时不重新启动的其他API的详细信息C 当收到信号时,睡眠功能将中止?,c,sleep,signals,C,Sleep,Signals,我想知道为什么,在我看来,无论输入多少次Ctrl+C,程序都应该在10秒后终止 sleep()是在中断时不会重新启动的函数之一 有趣的是,它也不会像人们预期的那样返回EINT 相反,它在剩余的睡眠时间内返回成功 见: 有关中断时不重新启动的其他API的详细信息 #include <signal.h> #include <stdio.h> void ints(int i ) { printf("ints \n"); } int main(void) {
#include <signal.h>
#include <stdio.h>
void ints(int i )
{
printf("ints \n");
}
int main(void)
{
signal(SIGINT, ints);
sleep(10);
}
^ints