Junior — Middle
Como é que a configuração do contexto é efetuada no sistema?
sobes.tech IA
Resposta da IA
No Go, o contexto (context.Context) é usado para transmitir informações sobre o tempo de vida, cancelamento de operações e outros dados importantes entre goroutines e funções. A configuração do contexto geralmente é feita usando as funções context.WithCancel, context.WithTimeout, context.WithDeadline e context.WithValue.
Exemplo de criação de um contexto com timeout e transmissão de valor:
ctx := context.Background()
ctx, cancel := context.WithTimeout(ctx, time.Second*5)
defer cancel()
ctx = context.WithValue(ctx, "userID", 12345)
// Posteriormente, ctx é passado para funções que podem cancelar a operação por timeout ou obter userID
Assim, a configuração do contexto é criar um novo contexto baseado no pai com os parâmetros necessários (cancelamento, timeout, valores).