반응형
sigset() 함수
#include <signal.h>
void (*sigset(int sig, void (*disp)(int)))(int);
◇ disp
- signal()과 같이 SIG_IGN, SIG_DFL 값이 들어갈 수 있다.
- sigset() 함수에는 SIG_HOLD 값도 들어갈 수 있는데, 이 경우 신호는 프로세스의 신호 마스크에 추가되고 신호 처리 방법은 변경되지 않는다.
■ 그 밖의 함수
#include <signal.h>
int sighold(int sig); sig를 신호 마스크에 추가
int sigrelse(int sig); 신호 마스크에서 sig 제거
int sigignore(int sig); sig의 처리 방법을 SIG_IGN으로 설정
int sigpause(int sig); 신호 마스크에서 sig를 지우고 신호를 받을 때까지 프로세스 중지
sigpause() 함수는 sigrelse() 함수를 호출하고 pause()를 하는 것과는 다르다.
sigpause()는 원자 단위 연산이기 때문에 신호 마스크를 변경하고 프로세스를 중지시키는 작업 사이에 어떤 방해도 있을 수 없다.
반응형