Sobes.tech
Junior — Middle

Můžete vysvětlit, co je to skupina chyb a jak se používá při monitorování nebo zpracování výjimek?

sobes.tech AI

Odpověď od AI

Skupina chyb (error group) je struktura, která umožňuje seskupit více chyb do jedné, aby bylo jejich zpracování a vrácení pohodlnější. V jazyce Go je to užitečné, když je třeba provést několik operací paralelně a shromáždit všechny vzniklé chyby do jednoho objektu.

Příklad použití skupiny chyb z balíčku golang.org/x/sync/errgroup:

import (
    "fmt"
    "golang.org/x/sync/errgroup"
)

func process() error {
    var g errgroup.Group

    g.Go(func() error {
        // první úkol
        return nil
    })

    g.Go(func() error {
        // druhý úkol
        return fmt.Errorf("chyba ve druhém úkolu")
    })

    // Čekáme na dokončení všech úkolů a získáváme první chybu, pokud existuje
    if err := g.Wait(); err != nil {
        return err
    }
    return nil
}

Tímto způsobem skupina chyb pomáhá pohodlně agregovat chyby z několika gorutin a zjednodušuje jejich zpracování.