socket 에서 recv/send 에서 프로그램이 죽습니다.
글쓴이: hybrid / 작성시간: 화, 2008/11/25 - 5:04오후
server/client 로 구성되어 있습니다.
처음에 accept/connect 가 잘이루어져서...
클라이언트에서 서버로 read(1바이트씩)/send(문자열 단위) 로 잘 전송 됩니다.
그 다음에 서버에서 클라이언트로 전송을 해야 하는데, 이때 문제가 생깁니다.
서버에서 send(혹은 write) 를 하려고 하면 프로그램이 죽고,
클라이언트에서 recv(혹은 read) 를 하려고 하면 프로그램이 죽습니다.
여기서 프로그램이 죽는건.... 그냥 종료 된다는 의미입니다.
segment fault 도 없이, 별다른 에러 메세지가 전혀 없이 그냥 죽어버립니다.
혹시 어떤 문제인지 알 수 있을까요?
Forums:
gdb 붙여보세요.
compile 할 때 -g 옵션 붙여서 compile 하시고, gdb 안에서 실행해 보세요.
죽을 때 왜 죽는지 이유(?)가 나올 것입니다.
대충 상황만 봐서는 SIGPIPE 가 원인이 아닐까 싶긴 합니다만...
댓글 달기