<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>
estoy haciendo algunos experimento con hilos<br>pero algo anda mal<br>la idea era hacer una ventana y que esta se haga visible al darle una orden por un socket<br>cuando reciba una cierta cadena x el socket la ventana debe realizar la orden<br><br>lo raro es k no la realiza, sino hasta después de k se ejecuten varios eventos en la ventana<br><br>este es el código que uso para enviar la orden<br><br><br>import socket<br>import time<br>import sys<br>#str = sys.argv[1]<br>str = "hola"<br>s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)<br>s.connect(("localhost", 1333))<br>#time.sleep(3)<br>s.send(str)<br>s.close()<br>print "e<br><br><br>completa su ejecución sin errores y de inmediato<br><br>este es el el hilo principal<br><br>import pygtk<br>pygtk.require('2.0')<br>#import gtk<br>#import os#, sys<br>import socket<br>import ventana<br>import thread<br>import time<br>import sys<br><br><br>try:<br> server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)<br> server.bind(("",1333))<br> server.listen(1)<br>except:<br> print "puerto 1333 ocupado\n?Otra instancia de la aplicacion se esta ejecutando?"<br> exit()<br><br>def escuchapuerto(e,i):<br> global server<br> time.sleep(15)<br> while True: <br> #try:<br> socket_cliente, datos_cliente = server.accept()<br> mensaje = socket_cliente.recv(32)<br> print mensaje<br> if mensaje == "hola":<br> #ventana.ventana.window.set_visible(True)<br> #ventana.ventana.window.maximize()<br> ventana.ventana.entry.set_text(mensaje)<br> #time.sleep(3) <br> #except:<br> # print "error escuchando puerto"<br> <br>thread.start_new_thread(escuchapuerto,(0,0))# no se ejecuta normalmente<br>ventana.start()<br><br>en este caso debe escribir un texto en un gtk.entry<br>ejecuto el primer script, envia la cadena sin errores<br>pero la ventan principal no hace nada<br>la doy click a los botones y otros eventos, despues de ejecutarse entre 3 y 10 eventos recién aparece el texto<br><br>hice casi lo mismo en java y funciona perfecto, la ventana principal responde sin problemas<br><br>que le esta pasando??<br>                                            </div></body>
</html>