|
recv() 의 리턴값이 0 일 경우는 연결이 정상적으로 종료된 경우라는 군요.
그 이외에는 읽은 Byte수와 Error 상태(SOCKET_ERROR)가 리턴됩니다.
리턴값에 대한 처리가 부족한것같습니다.
또한 recv() 함수가 데이터가 들어올 때 까지 무한히 대기하는 함수인가요?
저도 잘 몰라서.. 이것도 확인해봐야되구요.
그럼~
iwillgosu 님이 쓰신 글 :
: while(1) {
: Len = 0;
: memset(Buffer, 0, sizeof(Buffer));
:
: Len = recv(g_ServSock, Buffer, sizeof(Buffer), 0);
: fwrite(Buffer, sizeof(char), Len, fp);
: TotalSize += Len;
:
: if(!Len) break; <--------- 이부분에서 빠져 나가지 못합니다 ㅜㅜ
: }
:
: fclose(fp);
|