preloader

1. Januar 1 | 2 minuten lesen
Inhaltsverzeichnis

Esto hace que sea muy fácil trabajar con múltiples tareas simultáneas y cotejar sus resultados Tenga en cuenta que en este ejemplo de código, la función asincrónica del trabajador devuelve un resultado aleatorio número entre 1 y 10. La salida de este programa es: do_something - esperará al trabajador Trabajador - tomará algún tiempo Trabajador - tomará algún tiempo Trabajador - tomará algún tiempo Trabajador - Hecho Trabajador - Hecho Trabajador - Hecho resultados de llamadas: [5, 3, 4] Principal – Listo Principal - Inicio Como puede ver en esto, las tres invocaciones de trabajadores se inician pero luego suelte el procesador mientras duermen. Después de esto las tres tareas se despiertan y completo antes de que los resultados se recopilen e impriman. 34.6.2 Manejo de resultados de tareas a medida que están disponibles Otra opción cuando se ejecutan varias tareas es manejar los resultados a medida que se vuelven disponibles, en lugar de esperar a que se proporcionen todos los resultados antes de continuar. Este La opción es compatible con la función asyncio.as_completed(). Esta función devuelve un iterador de funciones asíncronas que se servirán tan pronto como tengan completaron su trabajo. La construcción for-loop se puede usar con el iterador devuelto por la función; sin embargo, dentro del bucle for, el código debe llamar await en las funciones asíncronas devuelto para que se pueda obtener el resultado de la tarea. Por ejemplo: definición asíncrona hacer_algo(): print(‘hacer_algo - esperará al trabajador’)

Ejecute tres llamadas al trabajador al mismo tiempo y recopile

resultados para async_func en asyncio.as_completed((trabajador(‘A’), trabajador(‘B’), trabajador(‘C’))): resultado = esperar async_func print(‘hacer_algo - resultado:’, resultado) Tenga en cuenta que la función asyncio.as_completed() toma un contenedor como una tupla de funciones asíncronas. 34.6 Ejecución de múltiples tareas 415

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