машина с 4-х ядерным процессором. Мы запускаем 4 горутины с CPU bound расчетами.
Го будет выполнять эти расчеты параллельно на каждом ядре или залочится на одной горутине и остальные будут висеть в очереди?
предварительно скажу, что не читал, как работает именно планировщик, так что с долей скептицизма воспринимай мои слова) Но насколько я понимаю, каждая горутина на отдельном ядре. Если написать runtime.GOMAXPROCS(1) - то только одно ядро задействовано. Если не писать runtime.GOMAXPROCS(...), то оно автоматически по количеству ядер пишется
Все так. Меня больше вопрос переключения этих горутин интересует, как они себя будут вести при cpu bound нагрузке
Обсуждают сегодня