Estoy programando un servidor y un cliente usando sockets no bloqueantes (fd_sets
y select
función) y una vez que el servidor cierra o cierra un socket de cliente, el cliente comienza a recibir una gran cantidad de basura hasta que se estrella .. me han advertido que cuando se trabaja con una toma de select()
se convertiría legible cuando se dio por terminada la conexión, pero ¿cómo puedo saber enC Sockets: evitar basura cuando el socket está cerrado
if(FD_ISSET(socket, &read))
{
}
si la causa es sólo datos regulares o el la conexión ha terminado?
¡Muchas gracias!
Gracias! Entonces, recv() devuelve 0 cuando el socket está cerrado? Jaja, eso fue tan obvio ... muchas gracias – Lucas
@Lucas ¡Hola! Bienvenido a Stackoverflow. Si está satisfecho con la respuesta de Dave, se lo alienta a aceptarlo y tal vez a votarlo mejor. ¡Salud! – Calvin1602
Gracias! Me registré y podré votar las respuestas tan pronto como reciba algunos puntos de representante – Lucas