preloader

1. Januar 1 | 2 minuten lesen
Inhaltsverzeichnis

todas las partes llegan a la barrera pero antes de permitir que esas partes continúen. El La acción posterior a la fase (la devolución de llamada) se ejecuta en un solo hilo (o proceso). una vez que es completado, entonces todas las partes se desbloquean y pueden continuar. Esto se ilustra en el siguiente diagrama. Los subprocesos t1, t2 y t3 están todos involucrados en la barrera. Cuando el hilo t1 alcanza la barrera, debe esperar hasta que sea liberado por la barrera. De manera similar, cuando t2 alcanza la barrera, debe esperar. Cuando t3 finalmente llega a la barrera se invoca la devolución de llamada. Una vez que la devolución de llamada ha completado el La barrera libera los tres subprocesos que luego pueden continuar. A continuación se muestra un ejemplo del uso de un objeto Barrera. Nótese que la función siendo invocado en cada hilo también debe cooperar en el uso de la barrera como el código se ejecutará hasta el método barrier.wait() y luego esperará hasta que todos los demás subprocesos también han llegado a este punto antes de que se les permita continuar. La barrera es una clase que se puede utilizar para crear un objeto de barrera. Cuando el Se instancia la clase de barrera, se puede proporcionar con tres parámetros: dónde • partidos el número de partidos individuales que participarán en la Barrera. • acción es un objeto invocable (como una función) que, cuando se proporciona, será llamado después de que todas las partes hayan entrado en la barrera y justo antes de soltar el centro comercial. • tiempo de espera Si se proporciona un “tiempo de espera”, se utiliza como valor predeterminado para todos los wait() llama a la barrera. Así, en el siguiente código b = Barrera (3, acción = devolución de llamada) Indica que habrá tres partes involucradas en la Barrera y que el La función de devolución de llamada se invocará cuando los tres alcancen la barrera (sin embargo, el timeout se deja como el valor predeterminado Ninguno). El objeto Barrera se crea fuera de los Subprocesos (o Procesos), pero debe estar disponible para la función que ejecuta el subproceso (o proceso). La forma más fácil de manejar esto es pasar la barrera a la función como una de las 378 32 Sincronización entre subprocesos/procesos

comments powered by Disqus

popular post

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Weiterlesen

Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza

Weiterlesen

• https://docs.python.org/3/ El sitio principal de documentación de Python 3. Contiene tutoriales, referencias de bibliotecas, guías de configuración e instalación, así como Python cómo-tos • https://docs.

Weiterlesen