[Python-es] Duda: Cual sería el orden de ejecución de eventos

tny a.porrua en gmail.com
Sab Oct 16 17:28:36 CEST 2010


> Si entiendo bien, buscas un modo de desacoplar el lugar donde se produce
> el evento del que lo procesa.
> 
> Lo normal es crear una "cadena de mando" por donde avanzan los eventos
> hasta que alguien los procese y "consuma". Con esto quiero decir que los
> "callbacks" deberían devolver un valor indicando si han consumido o no
> el evento, ejecutando primero los callbacks de los controllers para
> luego ascender a los proccesses que ejecutarían la acción por defecto.
> Esta cadena se pararía allí donde se "consuma" el evento, o bien al
> llegar al final.
> 
> En cuanto a la opción contraria, "comando", la comunicación desde padre
> a hijos, podrías también considerar la opción de "multidifusión", o sea,
> poder lanzar un comando a todas las instancias de un controller.

Gracias, ya he encontrado una manera sencilla (tanto a la hora de
programar el módulo como para quien lo valla a usar) de permitir escojer
el orden de ejecución de los callbacks. 
Por defecto se ejecutará primero el callback del "controller" y luego el
del "proccesses"
Para cortar la propagación del evento utilizaré una excepción, prefiero
dejar el valor de retorno libre por si lo necesito en un futuro.

Estoy pensando también en la comunicación horizontal entre procesos, y
ahora tengo que pensar también en la posibilidad de lanzar comandos a
varios procesos a la vez. 




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