유닉스 C 멀티 프로세스 소켓프로그래밍 질문이요
고양이
2023.04.01
질문 제목 : 유닉스 C 멀티 프로세스 소켓프로그래밍 질문이요 질문 요약 :소켓을 닫고 프로세스 죽이면 반복 루프안에 printf 글이 계속 출력이됩니다.질문 내용 :
유닉스 c 로 소켓 프로그래밍 을 서버와 클라이언트를 두고
서버는 우선 liten 후 accept를 한뒤 fork() 함수로 자식을 하나 만들어서
부모는 송신 자식은 수신을 하고요 클라이언트는 코넥트 하고fork() 함수로 자식만들어서
서버와 마찬가지로 송신은 부모가 수신은 자식이 하는데exit 라고 입력하면 종료를 하고싶은데
서버가 exit 치면 클라이언트도 종료가 되는데
클라이언트에서 exit 를 치면 서버에서는 계속받은메세지 하면서 무한반복되더라고요
서버에서 수신 프로세스 에서 exit 라는 게 들어오면소켓 닫고 killI(pid, SIGKILL); 로 죽이고 exit(1);
하는데도 요 ㅠㅠ 뭐가 문젠지좀 알려주세요
아그리고 한가지더
부모 프로세스를kill 하면자식 프로세스도 죽나요
그것도좀 알려주세요 고수분들 꼭좀 부탁드려요
-
초고리
소스를 좀 봐야겠는데여...
그리고 부모프로세스를 kill하면 자식프로세스 역시 종료 됩니다. 비정상적으로 종료 될 경우 좀비 프로세스가 생기기 때문에 유의하셔야 되여..
사실 제가 말씀드린 부분은 신빙성이 별로 없어요.. 옛날에 해서 잘 기억이 안나네여 ㅎㅎ