Автор Тема: Python GIL  (Прочетена 1014 пъти)

4096bits

  • Участник
  • *****
  • Публикации: 3178
    • Профил
Python GIL
« -: Окт 26, 2015, 10:40 »
Одеве попаднах на една статия относно Global Interpreter Lock и малко се притесних
Още ли съществува това животно и как стои въпроса със Multithreads
Доколкото разбрах, това не позволява повече от едно thread да се изпълнява едновременно. Нещо за защита но данните.
Статията беше от 2012та
Ето и линк
http://www.jeffknupp.com/blog/2013/06/30/pythons-hardest-problem-revisited/
« Последна редакция: Окт 26, 2015, 12:19 от 4096bits »
Активен

As they say in Mexico, "Dasvidaniya!" Down there, that's two vidaniyas.

gat3way

  • Участник
  • *****
  • Публикации: 6050
  • Relentless troll
    • Профил
    • WWW
Re: Python GIL
« Отговор #1 -: Окт 26, 2015, 17:51 »
Съществува. Това не означава че  нишките в питон не могат да се изпълняват конкурентно по принцип, проблемът е в memory management-а на питона, който не е thread-safe. Съответно операции, които "зад кулисите" водят до освобождаване на памет имплицитно включват синхронизация, реализирана на по-ниско ниво с мутекси. Това може да е проблем, може и да не е проблем, в повечето случаи не е толкова тежка драма, колкото се изкарва (субективно мнение базирано на моите си частни случаи).


Съвсем друг е въпроса че многонишковото програмиране в python е огромен ташак, примерно няма нормален thread cancelation, няма го удобството да споделяш лесно памет между нишките (с Queue-та е неудобно и бавно) - аз дори лично опрях дотам да го правя с mmap-нати файлове в един момент, синхронизационните му примитиви са кастрирани и малоумни - примерно рекурсивни мутекси в python - хах, като цяло threading-а в питона е лееееко жалка работа особено ако си свикнал с posix threads в C.
Активен

"Knowledge is power" - France is Bacon

Подобни теми
Заглавие Започната от Отговора Прегледи Последна публикация
Български счетоводен софтуер на Python
Предложения за български проект
cvludmiloff 3 3141 Последна публикация Юни 05, 2004, 17:38
от vladou
Python
Общ форум
fantom 6 1942 Последна публикация Ное 07, 2005, 18:51
от betso
Python
Общ форум
glam 0 1047 Последна публикация Яну 11, 2007, 13:00
от glam
Коренуване при python
Общ форум
ko_drugo 3 3571 Последна публикация Фев 18, 2007, 00:21
от ko_drugo
Алгоритъм от Python в PHP.
Web development
bohosh 3 1500 Последна публикация Фев 23, 2014, 18:45
от gat3way