Встречается на собеседованиях • сегодня
В чем разница между асинхронным контекстным менеджером и синхронным
Основное отличие в том, что асинхронный контекстный менеджер использует 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
интервью вопросы и ответы