Junior — Middle
Jaké prvky lze zahrnout do aktuálního kontextu spuštění programu?
sobes.tech AI
Odpověď od AI
V jazyce Go (Golang) je aktuální kontext běhu programu obvykle reprezentován typem context.Context. Používá se k přenosu informací o stavu běhu, zrušení operací a časových limitech mezi gorutinami.
Do kontextu lze zahrnout následující prvky:
- Zrušení (Cancellation) — signál, že operace by měla být přerušena.
- Deadline (Deadline) — čas, po kterém je operace považována za vypršenou.
- Hodnoty (Values) — páry klíč-hodnota pro přenos doplňujících informací (například identifikátory požadavků, tokeny autentifikace).
Příklad použití:
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
ctx = context.WithValue(ctx, "requestID", "12345")
// Předat ctx funkcím, které mohou zkontrolovat zrušení, časový limit nebo získat hodnoty
Tímto způsobem obsahuje kontext metadata a řídí životní cyklus operací v programu.