hola ch3m4 hice algunas pruebas agrege el "shutdown" en mi cliente antes de "close" no hay diferencia
me di cuenta k "socket_cliente.recv(4) " el "4" es el numero de bytes, pensé k era de bits cambie el largo de la cadena la longitud no importa, mayor o menor; mismo problema cambiar el timeout me dio una pista ni mi server (server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)) o mi socket_cliente (socket_cliente, datos_cliente = server.accept()) ni mi programa de envio (s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)) ninguno tiene un atributo llamado .timeout() me imprime un error con cada uno solo si llamo socket.timeout() funciona. pero asi no le estoy dando el dato a los objetos con lo que estoy trabajando pero paso algo interesante. incluso la impresion de errores necesita k ocurra algún evento. y si hago "print mensaje,"mensaje recibido" " primero imprime la variable mensaje y unos eventos después la cadena "mensaje recibido" y mas eventos después se actualiza la ventana parece k el problema es k el hilo no se ejecuta libremente. se queda esperando una oportunidad de ejecutarse o algo así es muy raro luego investigare mas sobre hilos y otras formas de iniciar un nuevo hilo gracias por responder > Date: Tue, 28 Aug 2012 10:00:21 +0200 > From: pych...@gmail.com > To: python-es@python.org > Subject: Re: [Python-es] raro problema con hilos > > El día 28 de agosto de 2012 00:56, xiao xiong mao panda rojo > <ailurus.fulg...@hotmail.com> escribió: > > > eso es solo el tiempo antes de que comience a escuchar > > igual sin esa linea me da el mismo resultado > > no importa el tiempo k espera > > solo aparece el texto después de ejecutar algunos otros eventos > > Vale. Entonces intenta determinar mejor dónde falla: > > - ¿El servidor recibe los datos o es un problema de actualización de la > ventana? > > - ¿Afecta el tamaño del buffer en la recepción? ¿Qué pasa si no hay > buffer? ¿Qué pasa si el mensaje tiene mayor longitud que el buffer? > > - ¿Afecta en algo si cambias el timeout (socket.timeout(value))? > > - ¿Qué pasa si fuerzas al cierre inmediato del socket con shutdown > antes de hacer close? > > > Prueba primero con la última pregunta. Según la documentación, un > .close() no significa que se cierre inmediatamente el socket. Tal como > lo has programado, el servidor no sabe cuándo ha terminado el cliente > de enviar el mensaje hasta que se cierra el socket por timeout. > > > -- > Hyperreals *R: http://ch3m4.org/blog > Quarks, bits y otras criaturas infinitesimales > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/
_______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/