Back to questions
Junior — Middle
62
Поделитесь своим опытом работы с асинхронным программированием и его особенностями.
Companies where asked
СКМ ПРО
Answer from AI
sobes.tech AI
Асинхронное программирование в Python позволяет выполнять операции, которые занимают время (например, запросы к сети или чтение файлов), не блокируя основной поток выполнения. Это особенно полезно для повышения производительности в I/O-bound задачах.
Основные особенности:
- Использование ключевых слов
asyncиawaitдля определения и вызова асинхронных функций. - Цикл событий (
event loop), который управляет выполнением задач. - Возможность параллельно запускать несколько корутин, что улучшает отзывчивость приложения.
Пример простого асинхронного кода:
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())
В этом примере две корутины выполняются параллельно, каждая ждет 1 секунду, после чего выводит сообщение.