linux信号送信関数のsleep
821 ワード
sleep関数はpause関数とあまり差がなく、新しい信号が来ると中断され、唯一の違いはsleepが指定された時間寝た後も呼び覚まされることです.
/*
============================================================================
Name : linux_c.c
Author : vince
Version :
Copyright : Your copyright notice
Description : Hello World in C, Ansi-style
============================================================================
*/
#include <stdio.h>
#include <unistd.h>
#include <signal.h>
#include <sys/types.h>
#include <sys/wait.h>
void handle() {
printf("alarm
");
}
int main(void) {
int time;
signal(SIGALRM, handle);
alarm(2);
time = sleep(100);
printf("sleep wake up, remain seconds:%d
", time);
return 0;
}
/** :
*
alarm
sleep wake up, remain seconds:98
*/