Buenas, mirando este problema me surgieron algunas dudas conceptuales que me gustaria si alguien puede ayudarme a aclarar:
Segun lo que entiendo, un socket es bloqueante cuando el proceso se queda "bloqueado" esperando recibir datos y por contrapartida es no bloqueante cuando se ejecuta de forma inmediata (haya o no datos para obtener).
Por otro lado, la operacion receive() en un socket TCP, devuelve en un string todo lo que haya llegado por TCP hasta ese momento, sin importar si la operacion en cuestion ( receive()) es bloqueante o no. Es esto correcto?
Mi duda surge porque en la solucion del examen, se menciona en forma de comentario :
"leemos el objeto en modo no bloqueante (puede ser muy grande)"
Para este caso, todo el documento html está en la variable data, luego de la ejecucion data, err = socket.receive() si socket es bloqueante?
Disculpas por el entrevero, pero hace varios dias estoy con esto y no logro dar con el clavo.
Muchas gracias.