Sobes.tech
Senior

Wat kan worden gebruikt om gegevens tussen goroutines over te brengen?

sobes.tech AI

Antwoord van AI

Om gegevens tussen goroutines in Go over te dragen, worden meestal kanalen (channels) gebruikt. Kanalen zorgen voor veilige synchronisatie en gegevensoverdracht, waardoor goroutines waarden kunnen uitwisselen zonder expliciete blokkades.

Voorbeeld van het gebruik van een kanaal:

ch := make(chan int)

// Gegevens verzenden in een goroutine
go func() {
    ch <- 42
}()

// Gegevens ontvangen
value := <-ch
fmt.Println(value) // 42

Naast kanalen kan gedeeld geheugen met synchronisatie via mutex uit het sync-pakket worden gebruikt, maar kanalen worden als een meer idiomatische manier in Go beschouwd.