Trabajar en background (thread)

aNgel rEsendiz g. sonajadiabolica en gmail.com
Lun Oct 2 16:45:07 CEST 2006


Que tal.

Creo que te puede servir  gtk.timeout_add:

Puedes poner algo así en __init__ de la ventana principal:

     self.timer = gtk.timeout_add (2000, self.on_timeout)

y declarar una función así dentro de la clase de la ventana principal:

    def on_timeout(self):
        print 'cosas que quieres hacer cada 2 segundos'
        return True

la función on_timeout se ejecutara cada 2 segundos.

Es mucho más sencilla que usar hilos, pero pues depende de tu caso particular.

Saludos.


On 9/30/06, Juan Carlos Rodrigo <jrodrigog en gmail.com> wrote:
> # Sobre Thread, muy basico...
> import threading, os
>
> class Worker( threading.Thread ):
>   def __init__( self, cmd, callback ):
>     threading.Thread.__init__( self )
>     self._cmd = cmd
>     self._callback = callback
>   def run( self ):
>     os.system( self._cmd )
>     self._callback( self._cmd )
>
> if __name__ == "__main__":
>   def end_callback( cmd ): print "end: %s" % cmd
>   w = Worker( "find", end_callback )
>   w.start()
>   # esto en GTK no lo harias, espera a que termine
>   w.join()
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en aditel.org
> http://listas.aditel.org/listinfo/python-es
>
>
>


-- 
aNgel rEsendiz.!




Más información sobre la lista de distribución Python-es