CnUnix

[알림판목록 I] [알림판목록 II] [글목록][이 전][다 음]
[ 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!
[알림판목록 I] [알림판목록 II] [글 목록][이 전][다 음]
키 즈 는 열 린 사 람 들 의 모 임 입 니 다.