Выбор ответа Junior Горутины и планировщик GMP спрашивают часто обновлено
Что задаёт GOMAXPROCS
Вопрос
Что ограничивает GOMAXPROCS?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: Сколько потоков разом выполняют Go-код. GOMAXPROCS это число P, то есть сколько горутин могут выполнять Go-код параллельно.
Варианты ответа
- Максимальное число горутин в процессе
- Общее число потоков ОС, включая syscall
- Сколько потоков разом выполняют Go-кодправильный ответ
- Число ядер, которые видит ОС и cgroups
Разбор
GOMAXPROCS это число P, то есть сколько горутин могут выполнять Go-код параллельно. Горутин может быть сколько угодно. Потоков ОС бывает больше: потоки, заблокированные в системных вызовах или cgo, не держат P (лимит на число потоков задаёт debug.SetMaxThreads, по умолчанию 10000). На то, что видит ОС, GOMAXPROCS не влияет.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.