[pyar] chat en sockets y gtk

Pedro Jose Pezzarini jose2190 en gmail.com
Sab Mar 22 10:33:45 ART 2014


@DarioCoria, te comprendo totalmente. Trabajo como desarrollador y a veces
es más rapido sacar algo con tecnología ya conocida, que nueva por conocer.
Y tampoco dan los tiempos para aprender algo sobre la marcha....

Si es tu caso, podés utilizar glade+gtk y hacer una gui rápida con glade2
... (ahora esta glade3 para gkt3) y utilizar GObject y sacar los procesos a
un thread separado.

El problema de tu freeze, es que el "while 1" que tenés corriendo, toma
control de la gui y se te congela todo.... a mi me pasó lo mismo cuando
hice un desarrollo con GStreamer.

Esta es una buena referencia, para trabajar threads con GTK:
http://unpythonic.blogspot.com.ar/2007/08/using-threads-in-pygtk.html


El 22 de marzo de 2014, 10:20, Dario Coria <dservero en gmail.com> escribió:

> Buenas Pedro. No sé si a alguno mas le a ocurrido esto, pero me e quedado
> en el tiempo.
> La falta de retro compatibilidad me dejaron en un python y un gtk el cual
> estoy acostumbrado a usar.
> Vivo prometiéndome hacer el salto, pero los tiempos y las obligaciones
> siempre me hacen ir a lo seguro.
>
> * "lo urgente no deja tiempo para lo importante" *
>
>
> El 22 de marzo de 2014, 9:21, Pedro Jose Pezzarini <jose2190 en gmail.com>escribió:
>
> Recuerda que PyGTK está deprecado, deberías usar GObject para
>> python/python3
>> Referencia muy útil:
>> https://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html
>>
>>
>> El 21 de marzo de 2014, 18:50, Dario Coria <dservero en gmail.com> escribió:
>>
>> Buenas Adrian.
>>> En lugar de glib.mainloop() utilizo gtk.main(), pero supongo que para el
>>> caso es lo mismo.
>>> Lo de io channel de glib nunca e usado, pero ahora me pongo a leer, ya
>>> tengo por donde empezar al menos
>>> Para ser mucho mas claro:
>>>
>>> class Main:
>>>     def __init__(self):
>>>         ...
>>>         thread.start_new_thread(self.daemon, (serversock,))
>>>         ...
>>>
>>>     def daemon(self, serversock):
>>>         while 1:
>>>             clientsock, addr = serversock.accept()
>>>             ...
>>>
>>> if __name__ == "__main__":
>>>     ob = Main()
>>>     gtk.main()
>>>
>>>
>>> El 21 de marzo de 2014, 16:36, Adrian Pardini <pardo.bsso en gmail.com>escribió:
>>>
>>> 2014-03-21 15:39 GMT-03:00 Dario Coria <dservero en gmail.com>:
>>>> > El thread del daemon que se encarga de escuchar las nuevas conexiones
>>>> solo
>>>> > parece dispararse solo cuando cierro la ventana. ¿?
>>>> > No sé por donde arrancar, si alguien me tira una idea de porque
>>>> ocurre esto
>>>> > les estaría muy agradecido.
>>>> > Repito:
>>>> > - todo funciona bien siempre que lo use por consola
>>>> > - el print dentro del daemon solo ocurre en cuanto cierro la ventana
>>>>
>>>>
>>>> Hola Dario,
>>>>
>>>> (sin ver el código) lo mas probable es que haces
>>>>
>>>> loop = GLib.MainLoop()
>>>> loop.run()
>>>>
>>>> [resto del proceso?]
>>>>
>>>> y hasta que el loop no termina el resto no se ejecuta.
>>>> Es un requerimiento que esté en otro thread (thread a lo python?).
>>>> Creo que te va a ser mas util con o sin gtk en el medio usar un IO
>>>> channel de glib y que te avise cuando hay que atender el socket.
>>>>
>>>> saludos.
>>>>
>>>>
>>>>
>>>> --
>>>> Adrian.
>>>> http://ovejafm.com
>>>> http://elesquinazotango.com.ar
>>>> http://www.elarteylatecnologia.com.ar
>>>> _______________________________________________
>>>> pyar mailing list pyar en python.org.ar
>>>> http://listas.python.org.ar/listinfo/pyar
>>>>
>>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>>
>>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>>> Argentina - http://www.usla.org.ar
>>>>
>>>
>>>
>>> _______________________________________________
>>> pyar mailing list pyar en python.org.ar
>>> http://listas.python.org.ar/listinfo/pyar
>>>
>>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>>
>>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>>> Argentina - http://www.usla.org.ar
>>>
>>
>>
>> _______________________________________________
>> pyar mailing list pyar en python.org.ar
>> http://listas.python.org.ar/listinfo/pyar
>>
>> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>>
>> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
>> Argentina - http://www.usla.org.ar
>>
>
>
> _______________________________________________
> pyar mailing list pyar en python.org.ar
> http://listas.python.org.ar/listinfo/pyar
>
> PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> La lista de PyAr esta Hosteada en USLA - Usuarios de Software Libre de
> Argentina - http://www.usla.org.ar
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listas.python.org.ar/pipermail/pyar/attachments/20140322/7d043465/attachment.html>


More information about the pyar mailing list