| [ CnUnix ] in KIDS 글 쓴 이(By): ymir (Mizz) 날 짜 (Date): 2003년 3월 11일 화요일 오후 03시 37분 52초 제 목(Title): Re: [Q] Signal Handler 에서 Bus Error.. > sig_child가 너무 복잡합니다. > 문제는.. waitpid같건 적절치 않습니다. 더구나 while로 무한대기라니. > 그리고 set_signal을 먼저 호출하는 것도 별로 안좋구요. > 단순한 flag를 set하는정도로 끝내고 나와서 밖에서 처리하세요. 조언 감사합니다. ^^ 음.. 코드가.. while (1) { sockfd = accept(...); childpid = fork(); if (childpid == 0) { process_rtn(); } else { close(sockfd); } } 처럼 여러개의 client 의 접속을 받아야 하고.. sig_child 는 wait 한 후에.. child 의 종료 상태를 기록해야 하거든요... flag 를 set 하고 밖에서 처리하는 것은 곤란할 듯 싶은데... 보통은 어떻게 쓰는게 좋은건지 궁금합니다... (음... 사실 저 루틴들도 걍 책보고 일단 쓰고 있는 거라... ( __)a) 음.. 그리고... waitpid 나 wait 나 같은거라... (실은 별 생각없이) 쓰고 있었는데요... 어차피 sig_child 에서 wait 를 불러도 blocking 하는거는 마찬가지라... 별 차이는 없을 것 같거든요... 혹시 이런 핸들러에서 시간이 오래 걸리면 좋지 않은 이유가 있는지요?? 바쁘시겠지만 좀 더 가르쳐 주셨으면 좋겠습니다.. ^^;;; Oh, I do believe everlasting love and destiny to meet you again I feel a pain I can hardly stand all I can do is loving you - *Mizz* the Magic Knight! |