저는 GIL이 파이썬 인터프리터 당 (심지어 여기 stackoverflow에서)라고 말하는 사람들을 종종 봅니다.Python GIL은 실제로 인터프리터마다 있습니까?
그러나 내가 소스 코드에서 볼 수있는 것은 GIL이 전역 변수이므로 각 파이썬 프로세스의 모든 인터프리터에 대해 하나의 GIL이있는 것으로 보입니다. 루아 또는 TCL처럼 통역 객체가 전달되지 않았기 때문에 그들이 이것을했음을 알았습니다. 처음에는 잘 설계되지 않았습니다. 스레드 로컬 저장소는 비단뱀 녀석들이 사용할 수있는 이식성이없는 것 같습니다.
이 정보가 맞습니까? 프로젝트에서 사용하고있는 2.4 버전을 간단히 살펴 보았습니다.
이 기능은 이후 버전, 특히 3.0에서 변경 되었습니까?
많은 프로젝트가 이전에 CPython에서 GIL을 제거했습니다. Unladen Swallow는 처음이 아닙니다. 그러나 GIL 버전뿐만 아니라 다른 사람들도 GIL 버전을 사용하지 않았습니다. – nosklo
또한 stackless는 GIL을 제거하지 않습니다. 사실 스택리스 마이크로 쓰레딩의 차단 작동은 전체 애플리케이션을 차단합니다. – nosklo
자이 썬은 너무 느리다. 대부분의 작업이 파이썬에서 이루어지는 자바 프로그램에 스크립팅 플러그인을 사용하지 않는다면 사용할 수 없다. – Lothar