Saltar al contenido principal
🔒 Modo vista previa. Las primeras quince lecciones de Foundations son gratis; esta es Pro. Inicia un trial de 7 días para desbloquear el editor, las pistas AI y el resto del programa. Tarjeta requerida, cancela cuando quieras en Dashboard.Iniciar trial de 7 días →
← CursosSenior Deep-DivesModule 1 · Concurrency internals · Recapasyncio.TaskGroup (Python 3.11+) frente a recopilarpredict24 / 161
+125 XP
Tarea
📝 **Pregunta:** Predice el resultado exacto. Tres tareas comienzan juntas: A termina en t=0.01, B genera ValueError en t=0.05, C terminaría en t=0.10. ¿Qué le sucede a C cuando B sube? ¿Cuántas excepciones aparecen en el grupo \`except*\`? 📋 Elige la respuesta correcta. 💡 **Pista:** Vuelve a leer la teoría anterior si no estás seguro.
Predice la salida

Lee el código con atención

import asyncio


async def task(name, delay, fail=False):
    await asyncio.sleep(delay)
    if fail:
        print(f"raise:{name}")
        raise ValueError(name)
    print(f"done:{name}")


async def main():
    try:
        async with asyncio.TaskGroup() as tg:
            tg.create_task(task("A", 0.01))
            tg.create_task(task("B", 0.05, fail=True))
            tg.create_task(task("C", 0.10))
    except* ValueError as eg:
        print(f"caught:{len(eg.exceptions)}")
    print("after")


asyncio.run(main())

¿Qué imprimirá el programa? Escribe aquí:

💬 Discusión

Sé el primero en hacer una pregunta o compartir un consejo.
Inicia sesión para unirte a la discusión. Leer es gratis.
Cargando discusión…