Preskoči na glavni sadržaj
🔒 Način pregleda. Prvih petnaest Foundations lekcija je besplatno; ova je Pro. Pokrenite 7-dnevni trial da otključate editor, AI savjete i ostatak programa. Kartica obavezna, otkažite bilo kada u Dashboard.Pokreni 7-dnevni trial →
← KolegijiSenior Deep-DivesModule 1 · Concurrency internals · Recapasyncio.TaskGroup (Python 3.11+) vs gatherpredict24 / 161
+125 XP
Zadatak
📝 **Pitanje:** Predvidite točan rezultat. Tri zadatka počinju zajedno: A završava na t=0,01, B podiže ValueError na t=0,05, C bi završio na t=0,10. Što se događa s C kada B podiže? Koliko je izuzetaka u grupi \`except*\`? 📋 Odaberite pravi odgovor. 💡 **Savjet:** Ponovno pročitajte gornju teoriju ako niste sigurni.
Predvidi izlaz

Pažljivo pročitaj kod

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())

Što će program ispisati? Napiši ovdje:

💬 Rasprava

Budi prvi — postavi pitanje ili podijeli savjet.
Prijavi se kako bi se pridružio raspravi. Čitanje je besplatno.
Učitavanje rasprave…