[pyar] multiprocessing y pygtk
Claudio Freire
klaussfreire en gmail.com
Vie Mar 29 01:18:52 ART 2013
2013/3/29 Claudio Freire <klaussfreire en gmail.com>:
> def mirar_puertos():
> while True:
> #blah
> en_gtk(lambda : gtk.hacerAlgo())
> mirador_de_puertos = threading.Thread(target=mirar_puertos)
Olvidé mencionar, que te conviene en los lambdas (o funciones internas
que uses), frizar los valores de las variables, de esta forma:
una_var_local = 0
while True:
una_var_local += 1
en_gtk(lambda una_var_local=una_var_local: gtk.hacerAlgoCon(una_var_local))
¿Por qué?
Porque para cuando el thread principal tome ese hacerAlgo, el lambda
referencia a la variable del otro thread (no al valor), y puede que
haya cambiado. Pasarlas por parámetro es una manera de "frizarlas"
bastante cómoda, que te puede ahorrar muchos dolores de cabeza.
More information about the pyar
mailing list