Junior — Middle
Jaký je cíl použití kontextu ve vašem projektu nebo kódu?
sobes.tech AI
Odpověď od AI
V jazyce Go se kontext (context.Context) používá k přenosu informací o stavu provádění, jako jsou časové limity, lhůty a zrušení operací, a také k přenosu hodnot mezi gorutinami.
Cílem použití kontextu:
- Řízení životního cyklu požadavků a operací (například zrušení HTTP požadavku při uzavření klienta).
- Přenos metadat (například identifikátory požadavků pro logování).
- Zajištění zrušení řetězce volání podle potřeby.
Příklad použití:
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
// Předáváme ctx do funkce, která může být přerušena časovým limitem
result, err := doSomething(ctx)
if err == context.DeadlineExceeded {
fmt.Println("Operace byla přerušena kvůli překročení časového limitu")
}
Tímto způsobem kontext pomáhá řídit provádění a vyměňovat data mezi komponentami aplikace.