Can anyone explain shortly, or point to a source describing why is the GIL actually needed? Lots of sources say "it would make GC very complicated otherwise", or "current design would need lots of changes", but I cannot find any detailed answers. The question is - why cannot python migrate to a Boehm-like GC with "stop the world" step and kill the GIL completely?
What is the biggest problem?
Update: actually the official wiki turned out to have some of the answers... http://wiki.python.org/moin/GlobalInterpreterLock - it seems that backwards compatibility (extensions, destruction timing) is the biggest problem
What is the biggest problem?
Update: actually the official wiki turned out to have some of the answers... http://wiki.python.org/moin/GlobalInterpreterLock - it seems that backwards compatibility (extensions, destruction timing) is the biggest problem