Sobes.tech
Junior — Middle

Cum se realizează configurarea contextului în sistem?

sobes.tech AI

Răspuns de la AI

În Go, contextul (context.Context) este utilizat pentru a transmite informații despre durata de viață, anularea operațiilor și alte date importante între goroutine-uri și funcții. Configurarea contextului se face de obicei folosind funcțiile context.WithCancel, context.WithTimeout, context.WithDeadline și context.WithValue.

Exemplu de creare a unui context cu timeout și transmiterea unei valori:

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

ctx = context.WithValue(ctx, "userID", 12345)

// Ulterior, ctx este transmis funcțiilor care pot anula operațiunea în cazul timeout-ului sau pot obține userID

Astfel, configurarea contextului constă în crearea unui nou context pe baza celui părinte cu parametrii necesari (anulare, timeout, valori).