Как планировщик выбирает какую горутину запустить?

Middle+
197 просмотров
AFK Offer AI

Планировщик Go (GMP) сначала проверяет локальную очередь текущего P. Если там пусто — пытается украсть работу у другого P (work stealing). Также каждые ~61 итерацию проверяет глобальную очередь, чтобы горутины там не зависали. Приоритет отдаётся горутинам, которые только что разблокировались — они попадают в runnext слот P.

Следующий вопрос

Что такое design document?