Sobes.tech
Junior — Middle

Come viene effettuata la configurazione del contesto nel sistema?

sobes.tech AI

Risposta dell'AI

In Go, il contesto (context.Context) viene utilizzato per trasmettere informazioni sulla durata di vita, l'annullamento delle operazioni e altri dati importanti tra goroutine e funzioni. La configurazione del contesto viene generalmente effettuata tramite le funzioni context.WithCancel, context.WithTimeout, context.WithDeadline e context.WithValue.

Esempio di creazione di un contesto con timeout e trasmissione di un valore:

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

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

// Successivamente, ctx viene passato a funzioni che possono annullare l'operazione in caso di timeout o ottenere userID

In questo modo, la configurazione del contesto consiste nel creare un nuovo contesto basato su quello genitore con i parametri necessari (annullamento, timeout, valori).