Встречается на 2% собеседований по Python
В чем разница между асинхронным контекстным менеджером и синхронным
Основное отличие в том, что асинхронный контекстный менеджер использует async with и должен реализовывать методы __aenter__ и __aexit__, тогда как синхронный использует with и методы __enter__, __exit__. Асинхронные менеджеры позволяют выполнять await внутри методов входа/выхода.
Пример синхронного:
python
class SyncManager:
def __enter__(self):
print("Entering")
return self
def __exit__(self, exc_type, exc_val, exc_tb):
print("Exiting")
with SyncManager() as manager:
print("Inside context")Пример асинхронного:
python
class AsyncManager:
async def __aenter__(self):
print("Async entering")
return self
async def __aexit__(self, exc_type, exc_val, exc_tb):
print("Async exiting")
async def main():
async with AsyncManager() as manager:
print("Inside async context")
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
Похожие вопросы
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы