Этот вопрос проверяет знание того, где существует Global Interpreter Lock, какие реализации Python им обладают и как он влияет на многопоточность.
Короткий ответ
GIL присутствует в интерпретаторах Python, основанных на CPython — самой распространённой реализации. Он также есть в PyPy (для совместимости).
В Jython, IronPython и некоторых экспериментальных интерпретаторах GIL отсутствует, поскольку они используют другие модели исполнения.
GIL влияет только на интерпретаторы Python, а не на язык как таковой: в других языках (Java, Go, Rust) такой механики нет.
Из-за GIL потоки в CPython не могут выполнять Python-код параллельно, но могут параллелиться при IO или вызовах C-расширений.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.