Middle — Senior
Wat is de rol van de Wg.Wait-methode bij het synchroniseren van threads?
sobes.tech AI
Antwoord van AI
De methode Wg.Wait() uit het sync pakket in Go wordt gebruikt om meerdere goroutines te synchroniseren. Het blokkeert de uitvoering van de oproepende goroutine totdat de teller WaitGroup nul wordt, dat wil zeggen totdat alle via Add() toegevoegde goroutines Done() hebben aangeroepen.
Voorbeeld:
var wg sync.WaitGroup
wg.Add(2)
go func() {
defer wg.Done()
// werk van de eerste goroutine
}()
go func() {
defer wg.Done()
// werk van de tweede goroutine
}()
wg.Wait() // Wacht tot beide goroutines klaar zijn
Op deze manier garandeert Wg.Wait() dat het programma niet verdergaat totdat alle parallelle taken zijn voltooid.