sigprocmask() 블록
.                                            
.    <-- 중간에 SIGINT시그널이 들어왔다.
.
.
sigprocmask()해제
pause();
블럭을 해제하면
시그널이 들어오면 포즈 이후에  시그널이 중간에 들어온게 있으니까.
포즈에서 프로그램이 중단되지 않고 바로 밑에 프로그램이 실행된다고 생각하지만
실제로는
블록된공간에서 시그널이 들어오면 시그널 바로 처리하고 PAUSE가 실행된다.
그리고 그다음 시그널을 오기를 기다리고 있다가 시그널이 들어오면 실행이된다.

      c 언어  |  2007. 9. 17. 11:22



sokoban's Blog is powered by Daum & Tattertools