Sobes.tech
Назад к вопросам
Junior — Middle
67

Использовал ли ты в своих проектах механизм кооперативной многозадачности в языке Python?

Ответ от нейросети

sobes.tech AI

Да, в Python механизм кооперативной многозадачности реализуется через корутины и ключевые слова async и await. Это позволяет писать асинхронный код, который не блокирует выполнение, переключаясь между задачами в определённых точках (например, при ожидании ввода-вывода).

Пример использования:

import asyncio

async def task(name, delay):
    print(f"Задача {name} стартовала")
    await asyncio.sleep(delay)
    print(f"Задача {name} завершена")

async def main():
    await asyncio.gather(task('A', 2), task('B', 1))

asyncio.run(main())

Здесь задачи кооперативно уступают управление при await, что позволяет эффективно использовать ресурсы.