Primer commit
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
import asyncio
|
||||
from datetime import datetime
|
||||
|
||||
def log(msg):
|
||||
print(f"[{datetime.now().strftime('%H:%M:%S')}] {msg}")
|
||||
|
||||
async def tarea_asincrona():
|
||||
log("Tarea asincrónica INICIADA")
|
||||
await asyncio.sleep(5)
|
||||
log("Tarea asincrónica TERMINADA")
|
||||
|
||||
async def tarea_paralela():
|
||||
log("Tarea paralela INICIADA")
|
||||
await asyncio.sleep(1)
|
||||
log("Tarea paralela TERMINADA")
|
||||
|
||||
async def main():
|
||||
log("Iniciando flujo principal")
|
||||
|
||||
# Lanzar tarea paralela (no bloquea)
|
||||
asyncio.create_task(tarea_paralela())
|
||||
|
||||
# Lanzar tarea asincrónica, pero NO esperarla aún
|
||||
tarea = asyncio.create_task(tarea_asincrona())
|
||||
|
||||
# Hacer otras cosas mientras tanto
|
||||
log("Realizando acción 1 mientras tareas corren...")
|
||||
await asyncio.sleep(1)
|
||||
log("Realizando acción 2 mientras tareas corren...")
|
||||
|
||||
# Ahora sí esperar que tarea_asincrona termine
|
||||
await tarea
|
||||
|
||||
log("Flujo principal FINALIZADO")
|
||||
|
||||
# Ejecutar el flujo
|
||||
asyncio.run(main())
|
||||
Reference in New Issue
Block a user