Menu

문서정보

<a href="/modules/moniwiki/wiki.php/manSearch?google=none&name=pause">pause</a>(2)

1장. pause(2)

차례
1.1절. 사용법
1.2절. 설명
1.3절. 반환값
1.4절. 에러
1.5절. 예제

시그널(:12)을 기다린다.


1.1절. 사용법

#include <unistd.h>

int pause(void);
		


1.2절. 설명

pause는 신호를 받을때까지 호출 프로세스(:12)를 중지시킨다.


1.3절. 반환값

항당 -1을 반환한다. errno는 ERESTARTNOHAND로 설정된다.


1.4절. 에러

EINTR

시그널을 받아서 인터럽트가 발생했다.


1.5절. 예제

#include <unistd.h>

#include <signal.h>

void sig_handler(int signo)
{
    printf("SIGINT발생\n");
}
int main()
{
    printf("hello world!\n");
    signal(SIGINT, (void *)sig_handler);
    pause();
    printf("Interupt\n");
}
		
위 프로그램은 SIGINT(:12)시그널이 발생할때까지 pause에서 대기한다. 만약 SIGINT시그널이 발생한다면, 시그널:::핸들러(:12)를 실행하고 나서 pause는 리턴하게 된다.