preloader

1 de enero de 1 | 2 minutos de lectura
Índice de contenido

En este ejemplo, la función trabajador() está envuelta dentro de un objeto de tarea que es devuelto de la llamada asyncio.create_task(worker()). Una función (print_it()) se registra como una devolución de llamada en la tarea usando el función asyncio.create_task(trabajador()). Tenga en cuenta que el trabajador se pasa la tarea que ha completado como un parámetro. Esto le permite obtener información de la tarea como cualquier resultado generado. En este ejemplo, la función asíncrona do_something() espera explícitamente en el tarea a completar. Una vez que esto sucede, se utilizan varios métodos diferentes para obtener información sobre la tarea (como si se canceló o no). Otro punto a tener en cuenta sobre este listado es que en la función trabajador() haber agregado una espera usando la función asyncio.sleep(1); esto permite que trabajador a dormir y esperar a que se complete la tarea desencadenada; es un IO asíncrono alternativa a time.sleep(1). La salida de este programa es: Principal - Inicio do_something: crea una tarea para el trabajador do_something - agregar una devolución de llamada trabajador - tomará algún tiempo trabajador - Hecho imprimir_it resultado: 42 hacer_algo - tarea.cancelado(): Falso hacer_algo - tarea.hecho(): Verdadero hacer_algo - tarea.resultado(): 42 hacer_algo - tarea.excepción(): Ninguno hacer_algo - terminado Principal - Listo definición asíncrona hacer_algo(): print(‘hacer_algo - crear tarea para el trabajador’) tarea = asyncio.create_task(trabajador()) print(‘hacer_algo - agregar una devolución de llamada’) tarea.add_done_callback(print_it) esperar tarea

Información sobre la tarea

print(‘hacer_algo - tarea.cancelado():’, tarea.cancelado()) print(‘hacer_algo - tarea.hecho():’, tarea.hecho()) print(‘hacer_algo - tarea.resultado():’, tarea.resultado()) print(‘hacer_algo - tarea.excepción():’, tarea.excepción()) print(‘hacer_algo - terminado’) def principal() : print(‘Principal - Inicio’) asyncio.run(hacer_algo()) imprimir(‘Principal - Listo’) si nombre == ‘principal’: principal() 34.5 Tareas de E/S asíncronas 413

comments powered by Disqus

popular post

El modelo AR de series temporales univariadas

Resumen: En esta entrada, descubrirá el modelo AR: El modelo autorregresivo.

Leer más

Evaluación de modelos para pronosticar

Resumen: Al desarrollar modelos de aprendizaje automático, generalmente se comparan varios modelos durante la fase de construcción.

Leer más

Modelos para pronosticar

Resumen: El pronóstico, traducido groseramente como la tarea de predecir el futuro, ha estado presente en la sociedad humana durante siglos.

Leer más