Lis le code attentivement
import asyncio
events: list[str] = []
async def critical(lock: asyncio.Lock, name: str, work: float) -> None:
async with lock:
events.append(f"{name} acquired")
await asyncio.sleep(work)
events.append(f"{name} releasing")
async def main() -> None:
lock = asyncio.Lock()
await asyncio.gather(
critical(lock, "A", 0.02),
critical(lock, "B", 0.01),
critical(lock, "C", 0.01),
)
for e in events:
print(e)
asyncio.run(main())
Que va afficher le programme ? Écris ici :