Voltar à lista
Windows Win32Rede (Winsock)ws2_32.dll

select

Aguarda até que um ou mais sockets fiquem prontos para leitura, escrita, ou sinalizem exceção.

Descrição

Como no Linux, é a API de multiplexação de I/O mais antiga; para escalabilidade em Windows, prefira I/O Completion Ports em vez de select sobre muitos sockets.

Header: winsock2.hDLL: ws2_32.dll

Assinatura

int select(
    int nfds,
    fd_set * readfds,
    fd_set * writefds,
    fd_set * exceptfds,
    const timeval * timeout
);

Parâmetros

ParâmetroTipoDescrição
nfdsintIgnorado no Winsock (mantido apenas por compatibilidade de assinatura com BSD sockets).
readfdsfd_set *Conjunto de sockets a observar para leitura.
writefdsfd_set *Conjunto de sockets a observar para escrita.
exceptfdsfd_set *Conjunto de sockets a observar para exceções.
timeoutconst timeval *Tempo máximo de espera; NULL bloqueia indefinidamente.

Valor de retorno

Número total de sockets prontos em sucesso; SOCKET_ERROR em erro (consulte WSAGetLastError).

Códigos de erro (GetLastError)

ERROR_NOT_SUPPORTED(50)
O pedido não é suportado.

Relacionadas