CAsyncSocket::Receive

가상 int 수신 ( void * lpBuf, int nBufLen, int nFlags = 0 );

반환 값

오류가 발생 하는 경우 수신 받은 바이트 수를 반환 합니다. 연결이 닫힌 경우 0을 반환 합니다. 그렇지 않으면, SOCKET_ERROR 의 값이 반환 되 고 GetLastError를 호출 하 여 특정 오류 코드를 검색할 수 있습니다. 이 멤버 함수에 다음과 같은 오류가 적용:

매개 변수

lpBuf

들어오는 데이터에 대 한 버퍼。

nBufLen

LpBuf 바이트에서의 길이。

nFlags

호출이 수행 되는 방법을 지정 합니다. 이 함수의 의미 소켓 옵션 및 nFlags 매개 변수에 의해 결정 됩니다. 후자는 c + + 또는 연산자와 함께 다음 값을 결합 하 여 생성 된:

주의

소켓에서 데이터를 받도록 하려면이 멤버 함수를 호출 합니다. 이 함수 연결 된 스트림 또는 데이터 그램 소켓에 대 한 사용 되 고 들어오는 데이터를 읽는 데 사용。

형식의 SOCK_STREAM소켓에 대 한 많은 정보를 제공 하는 버퍼의 크기를 현재 사용할 수 있는 반환 됩니다. -밴드 데이터 (소켓 옵션 SO_OOBINLINE)에 선 수신 소켓을 구성 하는 경우-밴드 데이터는 읽기-밴드 데이터만 반환 됩니다. 응용 프로그램 더의 대역 데이터를 읽을 수 남아 있는지 여부를 확인 하려면 IOCtl SIOCATMARK 옵션 또는 OnOutOfBandData 를 사용할 수 있습니다.

데이터 그램 소켓에 대 한 데이터를 제공 하는 버퍼의 크기는 첫 번째 큐에 추가 된 데이터 그램에서 추출 됩니다. 데이터 그램 제공 된 버퍼 보다 클 경우 데이터 그램의 첫 번째 부분으로 버퍼가 채워집니다, 그리고 초과 데이터는 손실 및 수신 설정 WSAEMSGSIZE오류 코드와 함께 SOCKET_ERROR 의 값을 반환 합니다. 들어오는 데이터를 사용할 수 있는 소켓에서 SOCKET_ERROR 의 값 설정 WSAEWOULDBLOCK오류 코드와 함께 반환 됩니다. 더 많은 데이터가 도착 하면 확인 OnReceive 콜백 함수를 사용할 수 있습니다.

유형의 SOCK_STREAM 소켓은 원격 쪽 연결 정상적으로 종료 하는 경우 수신 받은 0 바이트와 함께 즉시 완료 됩니다. 연결이 다시 설정 하는 경우 수신 WSAECONNRESET 오류와 함께 실패 합니다.

CAsyncSocket 개요 |nbsp; 클래스 멤버 (ko) | 계층 구조 차트(&N)

참고 항목nbsp;CAsyncSocket::AsyncSelect, CAsyncSocket::Create, CAsyncSocket::ReceiveFrom, CAsyncSocket::Send(&N)

Index