Sobes.tech
Junior — Middle

Как се инициализира и изпълнява нова горутина в програма?

sobes.tech AI

Отговор от AI

В Go нова горутина се създава с помощта на ключовата дума go, след която се извиква функция или метод. Това създава лек поток за изпълнение, който работи паралелно с основната програма.

Инициализацията и стартирането на горутина става по следния начин:

  1. Извиква се go преди функцията: go myFunction().
  2. Планировчикът на Go създава нова горутина и я поставя в опашката за изпълнение.
  3. Горутина започва да се изпълнява асинхронно, независимо от основната програма.

Пример:

func sayHello() {
    fmt.Println("Здравей от горутината")
}

func main() {
    go sayHello() // стартираме горутината
    fmt.Println("Здравей от main")
    time.Sleep(time.Second) // даваме време на горутината да приключи
}

Важно е да се помни, че горутините са много леки в сравнение с ОС нишките, и тяхното планиране и превключване се управлява от Go runtime, което позволява ефективно използване на ресурсите.