Junior — Middle
Wyjaśnij, czym jest gorutyna i jak jest używana w programowaniu
sobes.tech AI
Odpowiedź od AI
Gorutyna to lekka jednostka wykonawcza podobna do wątku w języku Go. Pozwala na uruchamianie funkcji równolegle, przy minimalnych kosztach w porównaniu do wątków systemowych.
Gorutyny są zarządzane przez środowisko uruchomieniowe Go, które efektywnie rozdziela ich wykonanie na wątki systemowe. Ułatwia to pisanie kodu współbieżnego i zwiększa wydajność.
Przykład użycia gorutyny:
package main
import (
"fmt"
"time"
)
func sayHello() {
fmt.Println("Cześć z gorutyny")
}
func main() {
go sayHello() // uruchom gorutynę
time.Sleep(time.Second) // dajemy czas gorutynie na wykonanie
}
W tym przykładzie funkcja sayHello jest uruchamiana jako gorutyna za pomocą słowa kluczowego go. Funkcja główna czeka sekundę, aby gorutyna zdążyła wykonać wyjście.