Junior — Middle
Como determinar se a execução do contexto atual foi interrompida ou cancelada?
sobes.tech IA
Resposta da IA
Em Go, para determinar se a execução do contexto atual foi interrompida ou cancelada, usa-se o método Done() do objeto context.Context. Este método devolve um canal que é fechado quando o contexto é cancelado. Normalmente, a verificação é feita assim:
select {
case <-ctx.Done():
// O contexto foi cancelado ou o tempo limite foi atingido
err := ctx.Err() // context.Canceled ou context.DeadlineExceeded
// Processar cancelamento
default:
// Continuar a trabalhar
}
Assim, se o canal ctx.Done() estiver fechado, significa que a execução deve ser interrompida.