Sobes.tech
Junior — Middle

Koje prednosti i funkcije pruža korišćenje podređenih konteksta u sistemu?

sobes.tech АИ

Одговор од АИ

U Go-u, podređeni konteksti se kreiraju pomoću funkcija context.WithCancel, context.WithTimeout ili context.WithDeadline i pružaju sledeće prednosti:

  • Upravljanje vremenom trajanja: Omogućavaju otkazivanje operacija i oslobađanje resursa kada se roditeljski kontekst otkaže ili istekne timeout.
  • Prenos signala otkazivanja: Svi podređeni konteksti dobijaju signal otkazivanja od roditeljskog, što olakšava koordinaciju gorutina.
  • Prenos vrednosti: Konteksti mogu sadržavati vrednosti dostupne podređenim kontekstima, što je korisno za prenos parametara i podešavanja.

Primer:

ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()

// prosleđujemo ctx gorutini koja će se završiti za 5 sekundi ili pri otkazivanju