Основы Asyncio

preview_player
Показать описание
В продолжение беседы о конкурентости и параллельности в Python, пришла пора посмотреть на модный молодежный asyncio

Асинхронное выполнение подходит для IO-bound задач, работает ровно 1 поток

Плюсы:
+ скорость и экономия времени, вместо x + y + z = max(x, y, z)
+ управляемость
+ меньше потребление ресурсов (в сравнении с потоками)

Минусы:
- "умирает" из-за одного блокирующего вызова (!)
- не безразмерный, нужно понимать, что корутины не бесплатные

важные принципы:
1) корутина работает как генератор
2) async - явный флаг, что данная функция является асинхронной (корутиной)
3) await - явный флаг, что в это месте функция встает на паузу и дает работать другим, пока ждет свои данные
4) event loop - цикл событий, механизм, который отвечает за планирование и запуск корутин. Можно представить как список/очередь, из которого в вечном цикле достаются и запускаются корутины

Частые ошибки:
- не использование await внутри корутины
- создание корутины, но использование ее, как функции
- использование внутри корутин синхронного(блокирующего) кода, в том числе IO

Читать:

Фаулер М. "Asyncio и конкурентное программирование на Python"

Присоединяйтесь к помощи каналу, будет интересно)
✔️Юмани 410011506612886

Будь первым везде и всегда, включай уведомления о новых выпусках 🔔

Смотри там где удобно🤩

#Python #PythonRussian #Asyncio
Рекомендации по теме
Комментарии
Автор

Единственное видео, где автор смог понятным образом донести суть асинхронщины, к тому же прошелся ПОСТРОЧНО по коду расъяснив его в деталях, благодарю

IlyaErokhin-uvvx
Автор

Только запустил и сразу понял, что это лучшее видео на данную тему из свежих материалов!

podgorniy.r
Автор

Очень жду вторую часть. Спасибо большое за такой информативный и самое главное - бесплатный контент. Ты лучший!

danilfighter
Автор

37:53 блин как же это в точку. У меня было ровно то что говорит автор, асинхронный телеграм бот а внутри него синхронные библиотеки. Вот прям один в один. Автору видео кстати респект за качественное видео! Это пока лучшее пояснение ассинхронисти в Python которое я видел. Продолжай в том же духе!

aradarbinyan
Автор

все четко по сути. Очень наглядно.
Всем рекомендую ваш канал!)

SemyonKalyakulin
Автор

Спасибо за такой объемный интересный и детальный гайд. Продолжай развивать канал!

ProficusLets
Автор

Спасибо. 3 дня смотрю про асинхронку. У вас очень хорошо получилось!

amalshakov
Автор

спасибо! всегда было лень разобрать эту тему) тут за первые 20 минут прочухал как оно работает)

dilirink
Автор

Автору огромное спасибо! Разъяснил буквально на пальцах

ynchk.
Автор

Спасибо за контент!
При поиске материалов по asyncio сразу нашел твое видео, но из-за непривлекательности заставки пропустил.
После продолжительного чтения документации и статей на Хабре, понял, что нет понимания базы. Вернулся к твоему видео и все стало максимально понятно.

oqturwz
Автор

Спасибо большое за видео. Тут явно более доступно автор объясняет тему, все понял, начинаем работу))

kotart
Автор

Большое спасибо за понятное объяснение!

Mesedal
Автор

Корутина засыпает, просыпается мафия)

otbephncb
Автор

Наконец-то я понял, что такое асинхронное программирование. Спасибо большое

BaDiTaRaKaN
Автор

спасибо большое, все очень доходчиво, интересно и очень полезно.

hovekci
Автор

Очень хорошо, всё по полочкам, всё понятно

ngbaranov
Автор

Еще не смотрела, лайк поставила. Потом зайду посмотрю))

usvwybl
Автор

Просто гений, легенда объяснений. Я так счастлив не был давно😅

fragtv
Автор

Наконец то нашел урок где объяснили что такое asyncio

nikolazzzer
Автор

Охх какая тема.. Автор бросил вызов решив взяться за Asyncio на своём канале с его стилем объяснения..но я посмотрю и запишу всё!

tryhard