Асинхронщина в Python

Ғылым және технология

Александр Полищук (ООО "Код безопасности") @ Moscow Python Meetup 52
"Python - это замечательный язык программирования, но есть одна вещь, которая ограничивает нашу свободу творчества, и называется она GIL. Спикер расскажет, как можно с ним договориться и не ограничивать себя одним потоком".
Cлайды: www.moscowpython.ru/meetup/52/...

Пікірлер: 31

  • @russab0
    @russab03 ай бұрын

    Один из немногих понятных докладов про асинхронность! Спасибо)

  • @TeppopucT
    @TeppopucT4 жыл бұрын

    Огонь! Лучшее объяснение на пальцах

  • @andreyklimenko5605
    @andreyklimenko56056 жыл бұрын

    в "примере из жизни" reutrn requests.get заблокирует нахрен ваш луп, господа

  • @user-bi4wd8hr2r

    @user-bi4wd8hr2r

    6 жыл бұрын

    Используйте aiohttp вместо. Но у него пока нет Digest-авторизации, это надо учитывать...

  • @alexpol3842

    @alexpol3842

    6 жыл бұрын

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

  • @Victorius-ua

    @Victorius-ua

    6 жыл бұрын

    Объясните, кто-нибудь, почему?

  • @agentdaun5699

    @agentdaun5699

    4 жыл бұрын

    @@Victorius-ua Ахах, год конечно прошёл, но requests.get это блокирующая функция, такая же, как например, select. requests не умеет в асинхрон, надо использовать aiohttp .

  • @Victorius-ua

    @Victorius-ua

    4 жыл бұрын

    @@agentdaun5699 спасибо за ответ, но самому дошло еще год назад, когда начал использовать asyncio :)

  • @MrFrimko
    @MrFrimko5 жыл бұрын

    почему такие сложности а асинком? вроде есть, но лучше бы не было. Почему не взяли реализацию из других технологий? например те же таски в сишарпе с тредпулом. Один из вопросов на докладе был про отмену тасков - в том же шарпе для этого есть инструмент CancellationToken меняете ему статус и все таски куда этот токен передали - отключаются. Не вижу причин почему не взять подобную реализацию.

  • @mr.senmax6185
    @mr.senmax6185 Жыл бұрын

    Человек вышел с докладом и не смог ответить на простой вопрос по теме доклада. Это жесть.

  • @user-cm5li5dr2m
    @user-cm5li5dr2m6 жыл бұрын

    По сути как-то мало сказал

  • @vitaliykopachyov2972
    @vitaliykopachyov29726 жыл бұрын

    >Асинхронный код плохо читаем и тяжело отлажевать Как раз наоборот засчет четко определенных мест прерывания(возврата управления) в функциях, мы более точно можем сказать, что происходит.

  • @SierjKhaletski
    @SierjKhaletski6 жыл бұрын

    Новый GIL на таймаутах с 3.2 если я не ошибаюсь

  • @zip1982besh
    @zip1982besh4 жыл бұрын

    мне понравился доклад. Сказал что асинхронный код работает в одном процессе и в одном потоке...

  • @ivan2885

    @ivan2885

    3 жыл бұрын

    а разве не так?

  • @zip1982besh

    @zip1982besh

    3 жыл бұрын

    @@ivan2885 всё так, сказал без всякого умысла.

  • @naaimiss4572
    @naaimiss45725 жыл бұрын

    Злата не рядом с Григорием? Не хочет отвлекать?

  • @dmitriykolesnik6281
    @dmitriykolesnik6281 Жыл бұрын

    Сразу видно что у человека огромный педагогический стаж. (нет!)

  • @boobubuo
    @boobubuo6 жыл бұрын

    я не понял про ГОРЯЧЧИЕ БУТЕРБРОТДЫ !! что за зверь такой :-J

  • @konstantin4045

    @konstantin4045

    4 жыл бұрын

    Это когда берешь хлэб, кидаешь на него колбасу, а сверху - кусок сыра. Фигачешь это все микроволновку и ждешь пока расплавится сыр. :)

  • @AndriiKuftachov
    @AndriiKuftachov6 жыл бұрын

    У меня вопрос, а какой уровень у участников, что докладчик рассказывает такие банальные вещи? Это профессиональная ориентация?

  • @svjatoslavblokhin1178

    @svjatoslavblokhin1178

    3 жыл бұрын

    Мне интересно, зачем такой снобизм) Кто-то хочет освежить теорию в памяти, кто-то, действительно, новичок, не разобрался с этим. Что плохого-то?

  • @nikitasid4947
    @nikitasid49472 жыл бұрын

    Хороший чистый русский порадовал.

  • @robotnaoborot
    @robotnaoborot6 жыл бұрын

    > Асинхронщина > и называется она GIL Но для завязанного на IO код GIL не проблема. Название и описание сбивают с толку. >Асинхронный код плохо читаем и тяжело отлажевать Код с потоками - тоже.

  • @user-bi4wd8hr2r

    @user-bi4wd8hr2r

    6 жыл бұрын

    Да нормально он читается. async/await означает, что в этом месте возможно переключение контекста. Всё. А код так и остаётся линейным.

  • @artintelligence2682

    @artintelligence2682

    6 жыл бұрын

    А ты уверен что GIL тебе прям таки дисковые операции отпустит?)) Вот работа с сетью и асинхронным драйвером - да. Но это не все IO. Вообще сейчас самым безгеморным методом является шедулер на процессах с корутинами. Там хоть в ногу стрельнуть сложнее, потоки для любителей детективных историй в коде

  • @user-bi4wd8hr2r

    @user-bi4wd8hr2r

    6 жыл бұрын

    А почему бы и нет? Как и в случае с сетевыми запросами - работа со стороны питона идёт с буфером.

  • @alexeygrebenshchikov3548
    @alexeygrebenshchikov35483 жыл бұрын

    Очень слабый доклад.

Келесі