Junior — Middle
Koji je cilj korišćenja konteksta u vašem projektu ili kodu?
sobes.tech АИ
Одговор од АИ
U Go jeziku, context.Context se koristi za prenošenje informacija o stanju izvršavanja, kao što su vremenska ograničenja, rokovi i otkazivanje operacija, kao i za prenos vrednosti između gorutina.
Svrha korišćenja konteksta:
- Upravljanje životnim ciklusom zahteva i operacija (npr. otkazivanje HTTP zahteva pri zatvaranju klijenta).
- Prenos metapodataka (npr. identifikatori zahteva za logovanje).
- Osiguranje otkazivanja lanca poziva po potrebi.
Primer upotrebe:
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
// Prosleđujemo ctx funkciji koja može biti prekinuta zbog timeout-a
result, err := doSomething(ctx)
if err == context.DeadlineExceeded {
fmt.Println("Operacija je prekinuta zbog isteka vremena")
}
Na ovaj način, kontekst pomaže u kontroli izvršavanja i razmeni podataka između komponenti aplikacije.