Sobes.tech
Senior

Gorutinalar yaradıldıqda, Go planlayıcısının yerli və ya qlobal növbəsinəmi daxil olur?

sobes.tech Süni İntellekt

AI-dan cavab

Go'da goroutine yaradarkən, bu, yerli planlaşdırıcı növbəsinə (local run queue) yerləşdirilir, bu da müəyyən bir M-yə (maşına, sistem axını) aiddir.

Go çalışma vaxtı M:N modelini istifadə edir, burada M sistem axınlarını, G isə goroutine-ləri təmsil edir. Hər M-nin öz yerli goroutine növbəsi var. Əgər yerli növbə çoxdursa və ya boşdursa, planlaşdırıcı goroutine-ləri yerli və qlobal növbələr arasında balanslaşdıra bilər.

Beləliklə, yeni goroutine əvvəlcə planlaşdırıcının yerli növbəsinə yerləşdirilir, bu da prosessorun keşi və kontekst dəyişikliklərinin xərclərini azaltmağa imkan verir.