threading thread stop example ejemplos acquire python multithreading concurrency condition-variable

stop - thread python 3



threading.Condition vs threading.Event (1)

En pocas palabras, utiliza una condición cuando los hilos están interesados ​​en esperar que algo se vuelva verdadero, y una vez que sea cierto, tener acceso exclusivo a algún recurso compartido.

Mientras que usted usa un Evento cuando los hilos solo están interesados ​​en esperar que algo se haga realidad.

En esencia, la condición es un evento + bloqueo abstraído, pero se vuelve más interesante cuando se considera que puede tener varias condiciones diferentes sobre el mismo bloqueo subyacente. Por lo tanto, podría tener diferentes Condiciones que describan el estado del recurso subyacente, lo que significa que puede despertar a los trabajadores que solo están interesados ​​en estados particulares del recurso compartido.

Todavía tengo que encontrar una explicación clara de las diferencias entre las clases de Condition y Event en el módulo de threading . ¿Hay un caso de uso claro donde uno sería más útil que el otro? Todos los ejemplos que puedo encontrar usan un modelo productor-consumidor como ejemplo, donde queue.Queue sería la solución más directa.