← все темы
Asyncio — примитивы синхронизации (Lock/Semaphore/Event)
asyncio-sync-primitives
🎴 Пройти квиз21 вопросов
-
middle theory Объясните, в чём разница между `asyncio.Lock` и `asyncio.Semaphore`, и приведите примеры использования каждого. Какой из них лучше подходит для ограничения кол…
-
middle theory Как работает `asyncio.Event`? В чём его отличие от `asyncio.Condition`? Приведите пример использования `Event` для координации между корутинами.
-
middle theory Какие антипаттерны или ошибки могут возникнуть при неправильном использовании `asyncio.Lock` или `asyncio.Semaphore`? Приведите примеры и объясните, как их избежать.
-
middle mcq Какой из следующих примитивов синхронизации лучше всего подходит для координации между корутинами, когда одна корутина должна ожидать сигнал от другой перед пр…
-
middle mcq Какой из следующих вариантов правильно использует `asyncio.Semaphore` для ограничения количества параллельных операций до 3?
-
middle theory Какие trade-offs возникают при использовании `asyncio.Semaphore` для ограничения количества параллельных операций в высоконагруженных системах? Как это влияет …
-
senior theory Почему `asyncio.Lock` НЕ обеспечивает взаимное исключение между процессами и потоками? Покажи как это сломается на проде и какие альтернативы для cross-process…
-
senior code Реализуй token-bucket rate-limiter на чистом asyncio (без Redis), используя `asyncio.Semaphore` или `asyncio.Condition`. Должен поддерживать burst и steady RPS…
-
middle theory Как можно использовать `asyncio.Event` и `asyncio.Lock` совместно для реализации паттерна 'producer-consumer' с обратной связью (backpressure)? Какие потенциал…
-
middle quiz Что произойдет, если вызвать `acquire()` на `asyncio.Lock`, который уже захвачен текущей корутиной?
-
middle quiz Какой из следующих подходов наиболее эффективен для ограничения числа одновременных запросов к API с использованием `asyncio.Semaphore`?
-
middle quiz Какой из следующих эффектов может возникнуть при использовании `asyncio.Event` в условиях высокой нагрузки?
-
middle quiz Какой из следующих вариантов наиболее безопасен при использовании `asyncio.Lock` в многопоточной асинхронной среде?
-
middle quiz Какой из следующих способов позволяет корректно обработать исключение при использовании `asyncio.Semaphore`?
-
middle quiz Какой из следующих факторов может привести к ухудшению производительности при использовании `asyncio.Lock`?
-
middle quiz Что произойдет, если `asyncio.Event` будет вызван методом `set()` несколько раз подряд?
-
middle quiz Какой из следующих факторов может привести к deadlock при использовании `asyncio.Lock`?
-
middle quiz Какой из следующих способов позволяет избежать проблем с производительностью при использовании `asyncio.Semaphore`?
-
middle quiz Какой из следующих эффектов наблюдается при попытке вызвать `acquire()` на `asyncio.Lock`, который уже захвачен другой корутиной?
-
middle quiz Что произойдет, если попытаться вызвать `release()` на `asyncio.Lock`, который не был захвачен?
-
middle quiz Какой из следующих факторов может привести к утечке ресурсов при использовании `asyncio.Lock`?