Бардык гурутиндер алдын ала ишке киргизилүү керекпи?
sobes.tech AI
AIден жооп
Жок, бардык goroutine'дер алдын ала белгиленгендей эле бир убакта жана параллелдүү ишке киргизилбейт. Goroutine'дер — бул жеңил чынжырлар, аларды Go планировщусу пландаштырат.
Көптөгөн goroutine'дерди ишке киргизгенде, алар кезектешип же параллелдүү иштеши мүмкүн, бул системалык жиптердин (GOMAXPROCS) жана учурдагы жүктүн санына көз каранды.
Өз алдынча, эгер GOMAXPROCS 1ге барабар болсо, goroutine'дер атаандаштыкта иштейт, бирок параллелдүү эмес — башкача айтканда, алардын ортосундагы которуу планировщик деңгээлинде болот, бирок бир гана иштейт.
Чын параллелизмге жетүү үчүн, GOMAXPROCS санын көбөйтүү керек (адатта, процессордун ядролорунун санына барабар). Анда, бир нече goroutine ар кандай ядролордо бир убакта иштей алат.