virtual int Recebimento ( void * lpBuf, int nBufLen, int nFlags = 0 );
Valor de retorno
Se nenhum erro ocorrer, receber retorna o número de bytes recebidos. Se a conexão foi fechada, ele retornará 0. Caso contrário, será retornado um valor de SOCKET_ERROR e um código de erro específicas pode ser recuperado chamando GetLastError. Os seguintes erros aplicam para esta função de membro:
Parâmetros
lpBuf
Um buffer para os dados de entrada.
nBufLen
O comprimento do lpBuf em bytes.
nFlags
Especifica a maneira na qual o chamar é feita. A semântica desta função é determinada pelas opções de soquete e o parâmetro nFlags . O segundo é construído pela combinação de qualquer um dos seguintes valores com o operador de C++ ou:
Observações
Chame essa função de membro para receber dados de um soquete. Essa função é usada para fluxo conectado ou datagrama soquetes e é usada para ler dados de entrada.
Para soquetes do tipo SOCK_STREAM, o máximo de informações como está atualmente disponível para o tamanho da reserva fornecida é retornado. Se o soquete foi configurado para recepção em linha de dados fora de banda (opção Soquete SO_OOBINLINE) e dados fora de banda são não lidos, apenas fora-de-banda dados serão retornados. O aplicativo pode usar a opção deSIOCATMARK IOCtlou OnOutOfBandData para determinar se os dados fora de banda mais permanecem para ser lido .
Para datagrama soquetes, dados são extraídos do datagrama enfileirados primeiro, up to o tamanho da reserva fornecida. Se o datagrama for maior do que o buffer fornecido, o buffer é preenchido com a primeiro parte do datagrama, os dados em excesso são perdidos e receber retorna um valor SOCKET_ERROR com o código de erro definido como WSAEMSGSIZE. Se nenhuma de entrada dados está disponível no soquete, um valor de SOCKET_ERROR será retornado com o código de erro definido como WSAEWOULDBLOCK. A função de retorno de chamada OnReceive pode ser usada para determinar quando chegarem mais dados.
Se o soquete é do tipo SOCK_STREAM e o lado remoto encerrou a conexão normalmente, um recebimento será concluída imediatamente com 0 bytes recebidos. Se a conexão tiver sido Redefinir, um receber falhará com o erro WSAECONNRESET.
Visão geral de CAsyncSocket |nbsp; Membros de classe | Gráfico de hierarquia
Co&nsulte tambémnbsp;CAsyncSocket::AsyncSelect, CAsyncSocket::Create, CAsyncSocket:: ReceiveFrom, CAsyncSocket::Send