Sobes.tech
Back to questions
Junior — Middle
68

Имели ли вы опыт работы с модулем asyncio для асинхронного программирования в Python?

Companies where asked
Фабрика РешенияФабрика Решения
AstonAston
Hi Rockits

Answer from AI

sobes.tech AI

Да, я работал с модулем asyncio в Python для написания асинхронных программ. Этот модуль позволяет выполнять несколько операций ввода-вывода параллельно без блокировки основного потока.

Основные концепции:

  • event loop — цикл событий, который управляет выполнением асинхронных задач.
  • coroutines — функции с ключевым словом async def, которые можно приостанавливать с помощью await.
  • tasks — объекты, которые планируют выполнение корутин.

Пример простого асинхронного кода:

import asyncio

async def say_hello():
    await asyncio.sleep(1)
    print('Hello')

async def main():
    await asyncio.gather(say_hello(), say_hello())

asyncio.run(main())

Такой подход позволяет эффективно использовать ресурсы при работе с сетевыми запросами, файлами и другими операциями ввода-вывода.