Асинхронность, многопоточность, многопроцессность в python | Библиотека asyncio и асинхронный код

Асинхронность, многопоточность, многопроцессность в python | Библиотека asyncio и асинхронный код

Python Hub Studio

54 года назад

116,572 Просмотров

В видео рассмотрим асинхронное программирование, и виды многозадачности при проектировании приложения - процессы, потоки и асинхронный код. Рассмотрим библиотеку asyncio и как на python писать асинхронный код.

Поддержать канал:
https://www.buymeacoffee.com/PythonHubStudio

Также, доступны функции - Спонсорство на YouTube:
https://www.youtube.com/channel/UCN3nx9hIzgItJeDb5FFfy0Q/join
и кнопка Суперспасибо!

Плейлист курс по Телеграм ботам (новый aiogram 3):
https://www.youtube.com/playlist?list=PLNi5HdK6QEmWLtb8gh8pwcFUJCAabqZh_

Курс по python 7 часов:
https://youtu.be/5g-MHZ0MzZY

Курс по Django 15 часов:
https://www.youtube.com/playlist?list=PLNi5HdK6QEmWNqncVoUZtj1QDC2VV0wI6

Курс HTML / CSS:
https://youtu.be/Bmtu5eNnjK8

Не забудьте подписаться и включить оповещения, чтоб не пропустить новые выпуски!

Тэги:

#программирование #асинхронность #многопоточность #процессор #цпу #python #asyncio
Ссылки и html тэги не поддерживаются


Комментарии:

@OleksandrOlishchuk
@OleksandrOlishchuk - 17.10.2023 16:18

Вау, дякую за інфу
Це підписка/лайк

Ответить
@oreshkinalexey
@oreshkinalexey - 31.10.2023 13:47

Божественно!

Ответить
@paqstd-yt
@paqstd-yt - 02.11.2023 23:45

Отличное объяснение, спасибо!

Ответить
@albertoarias2290
@albertoarias2290 - 06.11.2023 19:39

Привет! Я вот вывожу звук по нажатию клавишы с помощью pyqt5 и pydub. На нажатие клавиши мыши программа должна останавливать воспроизведение, но этого не происходит. Мне использовать многопоточность? Как её внедрить в мой класс окна?
Заранее благодарен за ответ.

Ответить
@dispeloff
@dispeloff - 16.11.2023 09:14

Максимально полезный видос👍

Ответить
@НосиковЕвгений
@НосиковЕвгений - 30.11.2023 11:19

ААААААААААААААА!!!!!!!!!!!!!!!!!! Лайк! Подписка!

Ответить
@Сашаепифаша
@Сашаепифаша - 01.12.2023 01:31

Четко обьяснил,я аж загорелся желанием код переделать под асинхронные функции, но концовка убила, то что нужны отдельные либы это такой костыльный костыль, лучше давайте вынесем мозги разработчикам языка чтобы они сделали разблокировку тнтерпретатора для многопотока 😅

Ответить
@igorpishurkov
@igorpishurkov - 09.12.2023 11:31

Смамое шикарное объяснение этой темы, которое только встречал! Просто шикарно, нет слов, больше вам спасибо!

Ответить
@d3en889
@d3en889 - 09.12.2023 13:21

Добрый день, у меня возник вопрос но его в комментах не нашел, @YaroslavOliinyk2023 задавал приближенный вопрос думаю,
Так вот, вроде все понятно и доступно объяснено! Но ни как не могу понять по поводу, почему при использовании asyncio надо обязательно использовать допустим aiosqlite ? в конечном счете await это же ожидание ответа и по идеи при отправке запроса с ожиданием ответа должно отрабатывать, я во всем могу ошибаться так как тока тока начал погружаться в мир асинхронности.

Ответить
@ДанилАджиев-ъ4б
@ДанилАджиев-ъ4б - 24.12.2023 17:28

Не понятно только, почему программа с многопроцессностью запускает новый процесс без всякого нажатия на Run. Запускаешь программу, ждешь 20 секунд, и надпись меняется на 20

Ответить
@SorterSbl
@SorterSbl - 29.12.2023 01:05

Очень круто , спасибо за видео

Ответить
@baldezh8997
@baldezh8997 - 01.01.2024 20:42

Django внутри работает асинхронно насколько мне известно и она может дать асинхронное апи если немного изловчиться в доках все есть

Ответить
@IT-thorns
@IT-thorns - 10.01.2024 09:13

Спасибо тебе большое, я понимаю асинхронность, как она реализовывается на других языках, но в Python из-за GIL было сложно понять как на практике реализовать код, спасибо ещё раз за такой хороший урок.

Ответить
@РабочийРабочий-я6о
@РабочийРабочий-я6о - 12.01.2024 00:44

Спасибо за энциклопедийное видео без воды! Даже спустя года оно не потеряет актуальности.

Ответить
@Disanax
@Disanax - 17.01.2024 22:38

Спасибо большое за урок, много узнал нового, старые недопонятости закрыл. Спасибо большое)

Ответить
@ВалерийМакаров-ц8ж
@ВалерийМакаров-ц8ж - 18.01.2024 21:36

Интересное видео

Ответить
@FeelUs
@FeelUs - 25.01.2024 04:21

Both types of concurrency (asyncio and threading) can suffer race conditions and deadlocks. (загуглите: python multithreading vs asyncio)

Ответить
@Anton16180
@Anton16180 - 13.02.2024 16:01

как же долго я искал такой годный контент

Ответить
@nikitakurabtsev1222
@nikitakurabtsev1222 - 22.02.2024 11:40

Лучшее русскоязычное объяснение, спасибо вам.

Ответить
@aanistratenko
@aanistratenko - 01.03.2024 00:11

Отличное видео!
Просто, наглядно и понятно!
Спасибо 👍

Ответить
@asmr_codster
@asmr_codster - 03.03.2024 20:31

Видео супер, спасибо!

Ответить
@kashka-
@kashka- - 12.03.2024 20:09

Искал медь, нашел золото. Отличный ролик

Ответить
@gionigioni6542
@gionigioni6542 - 12.04.2024 15:39

Спасибо, за видео! Но такая функция на Мас ничего не выводит! Никаких путей!(((

Ответить
@waldersasytz4274
@waldersasytz4274 - 20.04.2024 11:55

А в чём тогда разница между многопоточностью и асинхронностью если многопоточности из-за GIL в действительности нет. Т.е. многопоточность всё равно является асинхронностью

Ответить
@ВладЦепеш-ю3ц
@ВладЦепеш-ю3ц - 26.04.2024 00:53

теперь хоть что-то понял) спасибо за объяснение, пойду еще рыть информацию

Ответить
@99phenomenon
@99phenomenon - 07.05.2024 04:19

Grazie! Наконец-то я понял разницу + по GIL тоже!

Ответить
@eng9507
@eng9507 - 13.05.2024 19:42

Огромное спасибо!!!!!!!

Ответить
@Julia-lw2sk
@Julia-lw2sk - 14.05.2024 20:43

Спасибо большое! Очень доступное объяснение.

Ответить
@РемонтквартирвОдессе
@РемонтквартирвОдессе - 08.06.2024 19:33

Низкий поклон за то как разжевана вся информация . Все пошагово, на понятных примерах, все взаимосвязи данной данной темы учтены. СУПЕР.

Ответить
@AntonSokolov-i5k
@AntonSokolov-i5k - 10.06.2024 09:30

Спасибо! Четко и ясно обяснил!

Ответить
@jetbrain9115
@jetbrain9115 - 15.06.2024 22:08

Спасибо! Ты можешь преподносить информацию понятно.

Ответить
@maksymartomenko7633
@maksymartomenko7633 - 26.06.2024 01:08

Спасибо, это лучшее объяснение разницы всех этих понятий.

Ответить
@КоляБереговой-с4и
@КоляБереговой-с4и - 01.07.2024 22:11

огромнейшее спасибо, изначально учил по Олегу Молчанову, но застрял на генераторах. У вас понял для чего они нужны и как используются с первого примера.

Ответить
@mariapushkina6467
@mariapushkina6467 - 06.07.2024 12:27

thanks a lot for this video

Ответить
@jenniffr.s21
@jenniffr.s21 - 28.07.2024 13:56

Спасибо большое!

Ответить
@Жиловшопе
@Жиловшопе - 01.08.2024 00:33

Когда используете функцию asyncio.gather(), можно в качестве аргументов в нее передавать корутины, а не задачи. В этом случае корутины автоматически будут обернуты и станут задачами. А можно передавать задачи, как у автора ролика. Но зачем делать лишнюю работу? gather() предназначена в первую очередь для удобства работы, вот и надо использовать все её преимущества.

Ответить
@Faybmi
@Faybmi - 08.08.2024 19:21

Изучил джарго по вашим видосам, понял что надо знать многопоточность и асинхронность, опа, а тут имеется

Ответить
@fr1ezz522
@fr1ezz522 - 15.08.2024 09:40

В видео мы детально не рассматривали библиотеки threading и multiprocessing, сосредоточившись в основном на асинхронности. Правильно ли я понимаю, что в коммерческой разработке, например, в бэкенде на Django или FastAPI, а также при разработке ботов, эти библиотеки не используются и нет необходимости их изучать? Также интересно, спрашивают ли на собеседованиях о таких технологиях и в частности о этих библиотеках?

Ответить
@chosenfewtyranny
@chosenfewtyranny - 21.08.2024 12:06

Как повезло с этим видео. Объяснил очень просто, без заумных фраз. Огромное спасибище!

Ответить
@User_mayor
@User_mayor - 30.08.2024 16:24

ЛУЧШИЙ!

Ответить
@Arlant_co
@Arlant_co - 26.09.2024 13:43

Так емко и доходчиво, шикарная подача информации, спасибо!!)

Ответить
@musicdoriankon2632
@musicdoriankon2632 - 02.11.2024 23:52

Или я тупой, или что-то не так. Но для меня ничего не понятно было. Что за функции? Откуда они взялись? Что за "многопоточный", "многопроцесный"? Что такое "потоки"? Что это за слова и кто и зачем их придумал? Зачем автор видео так сильно дергает окно tk? У меня аж голова начала кружиться

Ответить
@musicdoriankon2632
@musicdoriankon2632 - 02.11.2024 23:55

У меня такое чувство, что в комментариях все программисты сидят! Все такие умные и всем все понятно... Откуда тогда столько дебилов по улицам ходит и ездит? Если ты понимаешь, что тут говорят, то тебе уже ничему учиться не нужно. Ты и так уже все знаешь! А курс, напомню, называется "для новичков"

Ответить
@alexandermartin5694
@alexandermartin5694 - 22.11.2024 01:39

Будет более расширенное видео к Multiprocessing?
Как то коротко получилось к этой теме.
Как обзор видео супер 👍

Ответить
@PythonHubStudio
@PythonHubStudio - 22.01.2023 08:36

Был интересный вопрос в комментах:
"А нужно ли импортировать asyncio и делать событийный цикл для бота(aiogram, discord.py)?
Ответ:
Нет, событийный цикл запускается самим фреймворком при запуске
bot.run() или
start_polling() или
start_webhook и тд.
Вы пользуетесь декораторами уже готовых корутин из фреймворка, внедряя в них желаемое вам поведение (async функций под декораторами). Если есть дополнительные функции, то вы их записываете через синтаксис async await, как показано в конце видео, и запускаете из корутин под декораторами, как показано в конце видео.

Ответить