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 */