Junior — Middle
Kādus elementus var iekļaut pašreizējā programmas izpildes kontekstā?
sobes.tech AI
Atbilde no AI
Go (Golang) programmēšanas pašreizējais izpildes konteksts parasti tiek attēlots ar tipu context.Context. To izmanto, lai pārsūtītu informāciju par izpildes stāvokli, operāciju atcelšanu un laika ierobežojumiem starp gorutīnām.
Kontextā var iekļaut šādus elementus:
- Atcelšana (Cancellation) — signāls, ka operācija jāaptur.
- Termiņš (Deadline) — laiks, pēc kura operācija tiek uzskatīta par novēlotu.
- Vērtības (Values) — atslēgas-vertības pāri papildu informācijas nodošanai (piemēram, pieprasījuma identifikatori, autentifikācijas tokeni).
Piemērs lietošanai:
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
ctx = context.WithValue(ctx, "requestID", "12345")
// Nododiet ctx funkcijām, kas var pārbaudīt atcelšanu, termiņu vai iegūt vērtības
Tādējādi konteksts satur metadatus un pārvalda operāciju dzīves ciklu programmā.