Junior — Middle
Kunt u uitleggen wat een foutengroep is en hoe deze wordt gebruikt bij monitoring of foutafhandeling?
sobes.tech AI
Antwoord van AI
Een error group is een structuur die het mogelijk maakt om meerdere fouten te groeperen in één, zodat ze gemakkelijk kunnen worden afgehandeld en geretourneerd. In Go is dit handig wanneer je meerdere operaties parallel wilt uitvoeren en alle fouten die optreden in één object wilt verzamelen.
Voorbeeld van het gebruik van de error group uit het pakket golang.org/x/sync/errgroup:
import (
"fmt"
"golang.org/x/sync/errgroup"
)
func process() error {
var g errgroup.Group
g.Go(func() error {
// eerste taak
return nil
})
g.Go(func() error {
// tweede taak
return fmt.Errorf("fout in tweede taak")
})
// Wacht tot alle taken klaar zijn en krijg de eerste fout, indien aanwezig
if err := g.Wait(); err != nil {
return err
}
return nil
}
Op deze manier helpt de error group om fouten van meerdere goroutines op een handige manier te groeperen en het afhandelen ervan te vereenvoudigen.