Junior — Middle
Kaip vykdoma konteksto konfigūracija sistemoje?
sobes.tech AI
Atsakymas iš AI
Go kalboje, kontekstas (context.Context) naudojamas perduoti informaciją apie gyvavimo laiką, operacijų atšaukimą ir kitus svarbius duomenis tarp gorutinių ir funkcijų. Konteksto konfigūracija paprastai atliekama naudojant funkcijas context.WithCancel, context.WithTimeout, context.WithDeadline ir context.WithValue.
Pavyzdys, kaip sukurti kontekstą su laiko limitu ir perduoti reikšmę:
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, time.Second*5)
defer cancel()
ctx = context.WithValue(ctx, "userID", 12345)
// Vėliau, ctx perduodamas funkcijoms, kurios gali atšaukti operaciją dėl laiko limito arba gauti userID
Taip konteksto konfigūracija reiškia sukurti naują kontekstą, pagrįstą tėvų kontekstu, su reikalingais parametrais (atšaukimu, laiko limitu, reikšmėmis).