Back to questions
Junior — Middle
49
Можете объяснить, что такое корутины в библиотеке Asyncio для асинхронного программирования?
Companies where asked
Институт человека РОМИР
Effective Mobile
Answer from AI
sobes.tech AI
Корутины в библиотеке Asyncio — это специальные функции, которые могут приостанавливать своё выполнение, позволяя другим задачам выполняться в это время, и затем возобновлять работу. Это основной механизм для асинхронного программирования в Python.
Корутина определяется с помощью ключевого слова async def, и внутри неё можно использовать await для ожидания завершения других асинхронных операций без блокировки основного потока.
Пример корутины:
import asyncio
async def say_hello():
print('Привет')
await asyncio.sleep(1) # приостанавливает корутину на 1 секунду
print('Мир')
asyncio.run(say_hello())
Здесь asyncio.sleep — это асинхронная задержка, которая не блокирует выполнение других корутин в цикле событий. Таким образом, корутины позволяют писать асинхронный код, который выглядит как последовательный, но при этом эффективно использует время ожидания.