Асинхронность в python

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025

Комментарии • 23

  • @dmitriiovsiannikov9605
    @dmitriiovsiannikov9605 Год назад +4

    Предложил бы сделать update этого ролика и объяснить разницу в python между корутинами и тасками.
    Например, в примере с gather, как получается, что корутина добавленная в метод, стала выполняться асинхронно (спойлер, gather все оборачивает в таски).

    • @pythonclinic
      @pythonclinic  Год назад +1

      можно бы, пока что это начальный уровень, хотелось показать именно принцип работы асинхронности, а не инструменты

  • @МаксимНовиков-ь4ц
    @МаксимНовиков-ь4ц 2 месяца назад

    Посмотрел весь цикл роликов, большое спасибо, много довольно подробной информации. Редко можно увидеть столько деталей. Про многопроцессорность вроде понятно. Но можно и отдельным процессом отправить запрос, верно? Наверное, очень затратно создавать его для такой пустяковой задачи..
    Но а как же многопоточность? Можно же её применить для этих целей.
    Хотелось бы увидеть сравнительно видео, где все таки лучше применить тот или иной способ(многопоточность/многопроцессорность/асинхронность)
    И также интересно узнать как применить подобное ускорение на запросы к БД(видимо лучше с этим справяться потоки, но хотелось бы увидеть этот разбор)

    • @pythonclinic
      @pythonclinic  2 месяца назад +1

      насчёт процесса - да, это не очень рационально с точки зрения расхода ресурсов на создание и убийство нового процесса
      отдельные процессы лучше всего применять для отделения сложных с точки зрения cpu задач, например, рендеринг сотен часов видео без участия пользователя; многопоточность хорошо подходит для связанных между собой задач, например рендеринг пары часов видео- и звуковых дорожек по общим исходникам (тоже без участия пользователя), а асинхронность можно добавлять есть есть i/o операции или попросту интерфейс пользователя, при жедании можно скомбинировать асинхронность с любым из предыдущих примеров, будет ренедеринг видео с возможностью вывода прогресса на интерфейс так чтобы он не замирал при этом

  • @Oleg_Zhigulin
    @Oleg_Zhigulin Год назад +19

    Даешь низкоуровневый разбор eventloop и зачем нужен yield во всем этом, awaitable обьекты😮😮😮 там же много всего от таймлимитов на задачу, до выполнения в отдельном потоке синхронных задач

    • @pythonclinic
      @pythonclinic  Год назад +3

      почему бы и нет))

    • @sladge17
      @sladge17 Год назад +1

      Отличное предложение, плюсую.

  • @anndreiko
    @anndreiko 2 месяца назад

    Спасибо большое. Довольно чёткое объяснение сложной темы! Я всё понял)
    Но остался вопрос. Сам Асинхронный код не сильно нагружает программу? Если тяжёлый юзер интерфейс сделать асинхронным, он для процессора станет проще? Для юзера то станет. Вот я к чему)

    • @pythonclinic
      @pythonclinic  2 месяца назад

      не, железу проще не станет) наоборот, придётся что-то делать вместо тупого ожидания ответа

    • @anndreiko
      @anndreiko 2 месяца назад

      @@pythonclinic т.е. получается асихронность не удел слабых ПК? Понятно) Спасибо за ответ!)

  • @vladvladov845
    @vladvladov845 Год назад +1

  • @koliblin
    @koliblin 6 месяцев назад

    А какие неначальные задачи можно выполнять с asyncio

  • @agentsmit09
    @agentsmit09 7 месяцев назад

    Не знаю как у всех асинхронность так работает, у меня получается полностью синхронный код. Делаю вызов асинхронной функции, по завершении она должна вызвать функцию что-то типа обработчика события. Вызов не происходит пока я где-то не напишу await для полученной корутины. Кроме NodeJS я так и не увидел ни где асинхронность.

  • @ГубкаБоб-р8ъ
    @ГубкаБоб-р8ъ Год назад +5

    Написал я пару-тройку телеграм ботов на aiogram. Посмотрел видео, и понял, что написать бота на aiogram, еще не значит понимать как создавать асинхронный код )))

    • @ИннаЛиксакова-о4н
      @ИннаЛиксакова-о4н Год назад

      аналогично, поняла после этого ролика, что мой бот на асинк не такой и асинк

  • @Дмитрий-э7ъ9ч
    @Дмитрий-э7ъ9ч Год назад

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

    • @pythonclinic
      @pythonclinic  Год назад +8

      переслушал на всякий случай видео, я бы не назвал качество звука студийным, но и до отвратительного, мне кажется, тут далеко
      вы всегда можете:
      a) забить на канал и не тратить своё время
      b) забить на качество звука и слушать как есть
      c) задонатить мне на студийное оборудование или на работу звукооператора и наслаждаться тем качеством звука, которое соответсвует вашим высоким стандартам

    • @Дмитрий-э7ъ9ч
      @Дмитрий-э7ъ9ч Год назад

      @@pythonclinic спасибо за ответ и предложенные советы. Попробовал послушать в наушниках и звук был уже не отвратительным, а плохим. Без наушников слушать это я бы не смог. Конечно проблема может быть и на моей стороне, но на других каналах звук хороший и без наушников.
      Возможно дело не в микрофоне, а в настройках, так как у меня звук из заведомо плохого микрофона намного лучше, чем в Вашем ролике.
      Студийное оборудование для Вашего контента необязательно. Не увидел в описании к ролику как можно Вам задонатить.

    • @mfwidk
      @mfwidk Год назад

      ​​@@pythonclinicПривет😊
      Спасибо, что снимаешь полезные видосы по питону!
      Звук и правда стал похуже, чем месяц назад. Если сможешь вернуть прежние настройки, будет круто ❤

    • @pythonclinic
      @pythonclinic  Год назад

      Я перепроверю свои настройки ещё раз, может у меня что-то не так с фильтрами, а может ноут даёт какие-то наводки, в общем посмотрю ещё раз, явление системное судя по всему
      про донаты пока что шутки, не более того

    • @pythonclinic
      @pythonclinic  Год назад +4

      спасибо за фидбэк, я понял, что звук поменялся, и в этом проблема, буду разбираться