Solución Confirmada / timeouts-ineficaces-3jklq
Timeouts ineficaces con goroutines
Diagnóstico del error
Si no se maneja adecuadamente el timeout en goroutines, la aplicación puede continuar ejecutándose sin finalización, desperdiciando recursos y fallando sin aviso.
Fix Sugerido
Implementa un mecanismo de timeout corrector utilizando context.Context. Ejemplo:
```go
ctx, cancel := context.WithTimeout(context.Background(), time.Second*5)
defer cancel()
go func() {
// Simula trabajo prolongado
time.Sleep(10 * time.Second)
}(ctx)
select {
case <-ctx.Done():
fmt.Println("Operación cancelada")
}
```