Junior — Middle
101
Können Sie erklären, wie die asynchrone Aufgabenverarbeitung in Python implementiert ist und wie sie funktioniert?
Unternehmen wurden gefragt
ИП Калюков Н.С.
ООО Авантелеком
Стилсофт
Effective Mobile
Antwort von AI
sobes.tech KI
Асинхронная обработка задач в Python реализуется с помощью модуля asyncio, который позволяет писать код, не блокирующий выполнение при ожидании ввода-вывода или других длительных операций.
Основные концепции:
- Коррутины — функции, объявленные с
async def, которые можно приостанавливать с помощьюawaitи возобновлять позже. - Цикл событий (event loop) — управляет выполнением коррутин, планирует их запуск и переключение.
Пример:
import asyncio
async def say_hello():
print('Привет')
await asyncio.sleep(1) # имитация асинхронной операции
print('Мир')
async def main():
await asyncio.gather(say_hello(), say_hello())
asyncio.run(main())
В этом примере две коррутины say_hello запускаются параллельно, и во время ожидания asyncio.sleep цикл событий переключается между ними, не блокируя выполнение программы.