CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ CnUnix ] in KIDS
글 쓴 이(By): HellCat (Nobody)
날 짜 (Date): 2003년 7월 30일 수요일 오후 12시 20분 24초
제 목(Title): Re: [Q] signal handler가 계속 call됨.



일반적으로 일단 쓰레드 시작하기 전에

sigfillset (& global_signal_set);
sigdelset (& global_signal_set, (뭐 꼭 필요한 시그날 예를 들면 SIGALRM 
이라던 - timeout 용));

그리고 일단 모든 시그날을 블락해주시고 나서

thr_sigsetmask (SIG_BLOCK.. 어쩌고 저쩌고.,..);

그리고 나자 마자 시그날 캣쳐 쓰레드를 시작해줍니다.

그리고 시작된  쓰레드 캣쳐 에서 받아줄 시그날을 걸어 놓고 sigwait()
해줘야죠.

sigwait() 사용법은 맨페이지 참조.

전 posix thread 는 디몬쓰레드 솔라리스서 쓰다가 메모리리크에 딘적이 있어서
잘 안쓰고 솔라리스 쓰레드만 써봐서 포식스에선 다른 방법을 쓰는지 잘 
모르겠네요.

하여간 대충 비스꾸리하게 할 것같은데요.


[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.