Sobes.tech
Junior

Кой управлява горутините в езика Go?

sobes.tech AI

Отговор от AI

Gorutinite в езика Go се управляват от вградения планировчик (scheduler) на средата за изпълнение (runtime) на Go. Този планировчик отговаря за разпределението на gorutinite между системните нишки (OS threads) и осигурява конкурентно изпълнение.

Основни точки:

  • Планировчикът на Go работи на ниво потребител, а не на ядро на операционната система.
  • Ефективно превключва между gorutinite, позволявайки изпълнението на хиляди леки задачи.
  • Разработчикът просто стартира goroutine с go и не управлява директно нишките.

Пример за стартиране на goroutine:

func sayHello() {
    fmt.Println("Здравей от goroutine")
}

func main() {
    go sayHello() // планировчикът ще стартира тази goroutine
    time.Sleep(time.Second) // за да даде време на goroutine да се изпълни
}