Выбор ответа Junior GIL, потоки и процессы спрашивают часто обновлено
Что такое GIL
Вопрос
Что такое GIL в CPython?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Блокировка: байткод в процессе выполняет один поток за раз. GIL позволяет держать много потоков, но выполнять Python-байткод в каждый момент может лишь один из них.
Варианты ответа
- Блокировка, которая запрещает создавать больше одного потока
- Механизм, делающий любой Python-код потокобезопасным
- Блокировка: байткод в процессе выполняет один поток за разправильный ответ
- Блокировка базы данных при доступе из нескольких процессов
Разбор
GIL позволяет держать много потоков, но выполнять Python-байткод в каждый момент может лишь один из них. Потоки создавать можно сколько угодно, и пока один ждёт I/O, другой работает. Потокобезопасности пользовательского кода GIL не даёт: переключение возможно между любыми байткод-инструкциями. К базам данных он не относится, это внутренность интерпретатора.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.