Inhaltsverzeichnis
Ambas clases de cola son seguras para subprocesos y procesos. Eso es que trabajan apropiadamente (usando bloqueos internos) para administrar el acceso a datos desde subprocesos concurrentes o Procesos. Un ejemplo del uso de una cola para intercambiar datos entre un proceso de trabajo y el proceso principal se muestra a continuación. El proceso de trabajo ejecuta la función de trabajador () durmiendo, durante 2 s antes poniendo una cadena ‘Hello World’ en la cola. La función principal de la aplicación configura la cola y crea el proceso. La cola se pasa al proceso como uno de sus argumentos A continuación, se inicia el proceso. El proceso principal luego espera hasta que los datos son disponible en la cola a través de los métodos (de bloqueo) get(). Una vez que los datos son disponible se recupera e imprime antes de que finalice el proceso principal. de proceso de importación de multiprocesamiento, cola desde el tiempo de importación del sueño def trabajador(cola): print(‘Trabajador - yendo a dormir’) dormir(2) print(‘Trabajador - despertado y poniendo datos en la cola’) cola.put(‘Hola Mundo’) def principal(): print(‘Principal - Inicio’) cola = cola() p = Proceso (objetivo = trabajador, args = [cola]) print(‘Principal - Iniciando el proceso’) p.inicio() print(‘Principal - esperando datos’) imprimir (cola. obtener ()) imprimir(‘Principal - Listo’) si nombre == ‘principal’: principal() El resultado de esto se muestra a continuación: Principal - Inicio Principal - Iniciando el proceso Principal - esperar datos Trabajador - ir a dormir Trabajador - despertado y poniendo datos en cola Hola Mundo Principal – Listo Sin embargo, esto no deja tan claro cómo la ejecución de los dos procesos entreteje El siguiente diagrama ilustra esto gráficamente: 390 32 Sincronización entre subprocesos/procesos
popular post
Temas de Pregrado en Ciencias de la Computación Guía avanzada a Python 3 Programación Juan caza
WeiterlesenTemas 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