SYSTEM PROGRAMMING
MSG_PEEK | MSG_DONTWAIT
뉴암스테르담
2015. 8. 5. 21:29
str_len = recv(recv_sock, buf, sizeof(buf)-1, MSG_PEEK | MSG_DONTWAIT) ;
MSG_DONTWAIT 옵션과 함께 설정되어 입력 버퍼에 수신된 데이터에 존재하는지 확인하는 용도로 사용된다.
MSG_PEEK 는 recv함수를 호출하면 입력 버퍼에 존재하는데 데이터가 읽혀지더라도 입력 버퍼에서 데이터가 지워지지 않는다. 때문에 MSG_DONTWAIT 과 함께 묶여서 블록킹 되지 않는, 데이터의 존재 유무를 확인하기 위해서 사용된다.
아무런 옵션이 주어지지 않으면 읽어들인 데이터는 입력버퍼에서 지워진다.
|