Какой из следующих способов позволяет корректно обработать исключение при использовании `asyncio.Semaphore`?