GIL в Python: зачем он нужен и как с этим жить

Sdílet
Vložit
  • čas přidán 11. 11. 2013
  • Григорий Петров
    12 сентября 2013
    Moscow Django Meetup № 14
    В своем докладе Григорий проведет краткий экскурс в историю потоков и расскажет, зачем был создан GIL. Будут рассмотрены практические вопросы многопоточности в Python и способы работы с GIL.
    Слайды выступления: www.moscowpython.ru/meetup/14/...
    Спонсор подкаста: Курсы Python для новичков (learn.python.ru) и продвинутые курсы - learn.python.ru/advanced/
  • Věda a technologie

Komentáře • 60

  • @searchingknowlege
    @searchingknowlege Před 8 lety +144

    Потрясающе поставленная речь! Отличный материал, отличная подача, прошу, еще!

  • @HeavyLexer
    @HeavyLexer Před 7 lety +68

    Милый человек, дай бог тебе здоровья за столь глубокий и детальный рассказ! низкий поклон!

  • @kirillayvazov4813
    @kirillayvazov4813 Před 29 dny +1

    Охренеть, Григорий! Я был знаком с Вами лишь по подкастам - слышал только Ваш голос. А тперь могу лицезреть Ваш визуальный образ! Приятно познакомится!

  • @p2mbot767
    @p2mbot767 Před 9 lety +50

    Шикарная манера повествования :)

  • @kasares_yana
    @kasares_yana Před rokem +7

    лучшее видео про gil в ютубе, даже несмотря на то, что ему уже девять лет))

  • @user-cs1vu9ip5r
    @user-cs1vu9ip5r Před 3 lety +10

    Я в шоке, никогда так легко и интересно не заходило. Григорий человек магнит. Примеры расставлены грандиозно, вставки личного опыта. Час как 5 минут, побольше бы таких встреч, спасибо вам большое.))))

  • @korumika3798
    @korumika3798 Před rokem +4

    9 лет лекции, в 2023 смотрю и получаю море полезной инфы

  • @johnsmith-yk5vz
    @johnsmith-yk5vz Před 7 lety +16

    поставлены все точки над GIL, интересно и спасибо за ваш труд)

  • @LizardTLT
    @LizardTLT Před 3 lety +2

    Не, ну это не рассказ... Это гордая песнь. Слушается на одном дыхании. Не возможно оторваться от всецело захватывающего повествования!

  • @armanbadalian
    @armanbadalian Před 7 lety +19

    Приятно слушать.

  • @cryday3270
    @cryday3270 Před 4 lety +3

    Отличный рассказ, лучший. Вы проникаете в самый фундамент работы программ, потоков и начинаете подниматься вверх тем самым собирая воедино настоящий механизм работы интерпретатора Python. Я б тоже самое сделал только просидел бы несколько недель в гугле и на форумах. Рад, что есть кто-то, кто умеет задавать правильные вопросы сам себе в понимании того как действительно работает код. Удачи вам)))

  • @MadMike93
    @MadMike93 Před 7 lety +5

    Вот это доклад! интереснейшая подача материала)

  • @PythonDevelopment
    @PythonDevelopment Před 3 lety +1

    Огромная благодарность Григорию)) Часто слушаю подкасты с ним из серии Москов Пайтон Подкаст. Расту с вами, товарищи)) От умных людей говорят становишься умным)

  • @pavelbazin8734
    @pavelbazin8734 Před 8 lety +2

    Очень круто! Спасибо большое.

  • @lavich
    @lavich Před 7 lety +6

    Хороший лектор! И слайды интересные

  • @alexelizard1798
    @alexelizard1798 Před 4 lety +1

    Лучший спикер, которого я слышал. Час прошел на одном дыхании

  • @WixxTeR
    @WixxTeR Před 2 lety +1

    Очень рад за Гришу, что он похудел.

  • @trashbin3134
    @trashbin3134 Před 8 lety +8

    Супер! С удовольствием посмотрел бы и другие выступления.

  • @sergeybryukhovskikh3096

    Большое спасибо! Помогло структурировать имеющиеся знания и заполнить пробелы.

  • @alexchto
    @alexchto Před 9 měsíci

    Шикарный доклад, идеальный просто

  • @Daflight17
    @Daflight17 Před 9 lety +1

    Здорово рассказано!

  • @j05gp
    @j05gp Před 10 lety +2

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

  • @tarassavchenko2317
    @tarassavchenko2317 Před 3 lety +1

    очень-очень доступно,спасибо)

  • @borispaschenko4365
    @borispaschenko4365 Před 7 lety +4

    Хороший рассказчик!

  • @dmChanal1
    @dmChanal1 Před 4 lety +3

    докладчик супер

  • @ZabytajaRussia
    @ZabytajaRussia Před 2 lety +1

    Спасибо за понятную лекцию)
    Подпишусь на канал!

  • @AntKazak650
    @AntKazak650 Před 6 lety +1

    Супер!!!

  • @dronovdmitry
    @dronovdmitry Před 7 lety +3

    Шик ) Спасибо огромное Григорию и MPython )

  • @friedrichalbertkyuri
    @friedrichalbertkyuri Před 4 lety +1

    Именно то, чего мне не хватало!

  • @OdinO4ka1986
    @OdinO4ka1986 Před 8 lety +3

    Бывший коллега :)

  • @pycode_solutions
    @pycode_solutions Před rokem

    Григорий, красавчик!

  • @user-cb1wt3tj1f
    @user-cb1wt3tj1f Před 4 lety

    Класный лектор, лайк однозначно.

  • @user-xl1zq2ic5f
    @user-xl1zq2ic5f Před 2 lety

    Маэстро, ещё!

  • @user-ih8ex4hh7z
    @user-ih8ex4hh7z Před 5 lety +1

    жизненно!)))

  • @voynere
    @voynere Před 3 lety +1

    я в 2020 году смотрю, в новых видео Григорий другой))

  • @avazart614
    @avazart614 Před 4 lety

    Чет не понял как оно переключается 5мс если в Windows переключает потоки с интервалом ~20мс Как такое получается? Еще нужно разбудить поток и заслипить, возможно еще что-то залочить.

  • @guiterenzog2723
    @guiterenzog2723 Před 28 dny

    Момент про поднятие GIL в numpy не понял. Поднятие - имеется в виду блокировка? Или наоборот отпускает и дает возможность работать другому потоку?

  • @MrLotrus
    @MrLotrus Před rokem +1

    Не могу найти ничего про "механизм поднятия GIL". Как он называется на английском?

  • @catwhiskers-
    @catwhiskers- Před rokem +1

    10 лет спустя.... Он был прав)))

  • @dadrik
    @dadrik Před 3 lety +1

    a in xrange(10**8) выполняется мнгновенно, вероятно имелось ввиду a in range(10**8), который генерит список чисел

    • @coryphoenixxx8238
      @coryphoenixxx8238 Před 2 lety

      xrange был в python 2

    • @psoger
      @psoger Před 2 lety

      range же генерит итератор. Иначе бы памяти просто не хватило на такой список

    • @wadyn95
      @wadyn95 Před 2 lety +2

      Ошибаешься, xrange выполнялся гораздо дольше чем range в 3-ем питоне, тк он создавал список с этими значениями, а range это генератор

  • @RS-mp5rp
    @RS-mp5rp Před 2 lety +2

    А если первый поток как раз на 5 миллисекунде (или на 100-м тике) делает проверку a > 0 и этот поток засыпает, затем просыпается второй поток и меняет значение a. Что происходит в таком случае?)

    • @MrLotrus
      @MrLotrus Před rokem +1

      Узнали за эти 9 месяцев? Я предполагаю что интерпретатор может упасть, если тик не доведён до конца и после сна поменялись данные, с которыми он работал в рамках тика. А ваш сценарий возможен, но это будет лишь логическая ошибка, от которых gil не защищает. Это на откуп разработчика.

  • @sergeyshevchenko9715
    @sergeyshevchenko9715 Před rokem

    Всем привет! кто-нибудь понял о каком авторе и его статье про GIL идёт речь? хочу почитать)

  • @MrWolfmen
    @MrWolfmen Před 4 měsíci

    Не понял. GIL не зашищает от логических ошибок где a>0 там в примере. Но а если там логическая ошибка в том что массив теперь стал пустым, а с него что то попытаются взять. Интерпритатор же упадет. А gil якобы защищает от падения

  • @jin4644
    @jin4644 Před rokem +1

    Православный питон ))

  • @Opdeit
    @Opdeit Před 7 lety +1

    ахах норм обьяснил

  • @paul_wiggin
    @paul_wiggin Před 4 lety +3

    Программисты знают только два числа: ноль и много 🤣

  • @Alien-qy8ip
    @Alien-qy8ip Před 3 lety

    Вадим Шандринов 51:35

  • @user-ux5qd5zr2k
    @user-ux5qd5zr2k Před rokem +1

    Это Понасенков от мира Python
    Браво, маэстро!

  • @ZlobniyTapoG
    @ZlobniyTapoG Před 7 měsíci +1

    Ого каким пухляшом был Григорий, худым лучше !

  • @AndriiKuftachov
    @AndriiKuftachov Před 7 lety +6

    С каких пор процессы стали более правильным способом организации многозадачности, чем потоки? И та же апелляция к тому, что так в Linux. Это как раз и есть большой косяк всех Unix-like систем, потому, что они проектировались как принципиально однозадачные системы, в отличие от Windows NT.
    Лекция для колхозников. Лектор:
    - Товарищи колхозники. Перед вами череп Александра Македонского,
    где ему 7 лет. А вот этот череп, где ему 25 лет. И, наконец,
    череп умершего Александра Македонского. Вопросы есть?
    Есть:
    - Скажите, пожалуйста, как может быть у одного человека три черепа?
    - А вы, простите, кто? - спрашивает лектор.
    - Дачник.
    - Вот и идите на хер. Лекция для колхозников.

    • @Enerdzizer
      @Enerdzizer Před měsícem

      Уважаемый критик, если вы ещё читаете комментарии, как так получается, что все подавляющее большинство серверов на линуксе? По идее Windows nt тогда следуя вашей логике должна победить.. Или в чём тут дело?

  • @urlspy
    @urlspy Před 5 měsíci

    Спустя 10 лет от этой лекции python такой ну ок pep 703.