Back to questions
Junior — Middle
66
Использовал ли ты в своих проектах механизм кооперативной многозадачности в языке Python?
Answer from AI
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, что позволяет эффективно использовать ресурсы.