[질문] 이미 connect 한 소켓에 대해서 recv할 데이터가 있는지 없는지 체크하는 방법은?
글쓴이: sayhappy / 작성시간: 화, 2009/06/09 - 1:36오후
안녕하세요.
소켓을 bind해놓고 select()로 기다리다가
누군가 connect()를 호출해서 연결을 시도하면
select()가 반환되어서 fd_set을 비교하능 방법은 이해했습니다.
그러나 이미 connect()함수를 통해서 상대방과 커넥션이 이루어진 소켓에 대해서
recv할 데이터가 있는지 없는지를 확인할 수 있는 방법은 없을지요?
non-block 소켓을 만들어서 while 루프를 돌면서 계속~확인하는 수밖에 없는건가요?
그렇다면 중간중간 time out을 두려고 하는데, 윈도우에는 SO_RCVTIMEO를 사용할 수 없다고 하네요.
어떤 방식을 사용하면 좋을런지요?
Forums:
댓글 달기