Sobes.tech
Junior — Middle

Jak inicjuje się i wykonuje nową gorutynę w programie?

sobes.tech AI

Odpowiedź od AI

W języku Go nowa gorutyna jest tworzona za pomocą słowa kluczowego go, po którym następuje wywołanie funkcji lub metody. Tworzy to lekki wątek wykonawczy, który działa równolegle z głównym programem.

Inicjalizacja i uruchomienie gorutyny wygląda następująco:

  1. Wywołuje się go przed funkcją: go myFunction().
  2. Planista Go tworzy nową gorutynę i umieszcza ją w kolejce do wykonania.
  3. Gorutyna zaczyna działać asynchronicznie, niezależnie od głównego programu.

Przykład:

func sayHello() {
    fmt.Println("Cześć z gorutyny")
}

func main() {
    go sayHello() // uruchamiamy gorutynę
    fmt.Println("Cześć z main")
    time.Sleep(time.Second) // dajemy czas gorutynie na wykonanie
}

Ważne jest, aby pamiętać, że gorutyny są bardzo lekkie w porównaniu do wątków systemowych, a ich planowanie i przełączanie jest zarządzane przez środowisko uruchomieniowe Go, co pozwala na efektywne wykorzystanie zasobów.