socket program how hacer como c++ c asynchronous sockets nonblocking

c++ - program - Hacer un socket sin bloqueo para WinSocks y*nix



socket udp c++ (2)

En C / C ++, ¿cómo convertiría un socket de bloqueo en un socket no bloqueante tanto en WinSocks como en * nix; para que select () funcione correctamente. Puede usar el preprocesador para el código específico de la plataforma.


En Linux:

fcntl(fd, F_SETFL, O_NONBLOCK);

Windows :

u_long on = 1; ioctlsocket(fd, FIONBIO, &on);


select () se supone que funciona en sockets de bloqueo . Se devuelve cuando una lectura () volvería inmediatamente, lo que es siempre el caso con sockets no bloqueantes.