설명

raise()는 프로세스 자신에게 시그널을 보낼 때 사용합니다. kill()함수를 사용한다면 아래와 같습니다.

kill( getpid(), sig);

헤더 signal.h
형태 int raise(int sig);
인수
int sig 전송하려는 시그널 번호
반환
0 성공
0 이외의 값 실패

예제

#include <stdio.h>
#include <signal.h>

void sigint_handler( int signo)
{
   printf( "Ctrl-C 키를 눌루셨죠!!\n");
}

int main( void)
{
   printf( "시그널을 받을 때까지 잠수합니다.\n");

   // CTRL-C로 바로 종료되는 것을 막기 위해
   // SIGINT를 사용자 핸들러로 지정했습니다.

   signal( SIGINT, sigint_handler);
   pause();
   printf( "깨어났지만 바로 종료합니다. 안녕~~\n");
}
]$ ./a.out
카운트 다운 3
카운트 다운 2
카운트 다운 1
죽었음          <- 표현이 죽입니다. ^^;
]$