Junior — Middle
Heb je de methode Context.WithTimeout gebruikt om de uitvoeringstijd van operaties te beperken?
sobes.tech AI
Antwoord van AI
Ja, de methode context.WithTimeout in Go wordt vaak gebruikt om de uitvoeringstijd van operaties te beperken, vooral bij het werken met netwerkverzoeken, databases of andere langdurige processen.
Het creëert een nieuwe context die automatisch wordt geannuleerd na de opgegeven tijd, wat helpt om vastlopen te voorkomen en time-outs te controleren.
Voorbeeld van gebruik:
ctx, cancel := context.WithTimeout(context.Background(), 2*time.Second)
defer cancel()
err := doSomething(ctx)
if err != nil {
if errors.Is(err, context.DeadlineExceeded) {
fmt.Println("De operatie heeft de tijdslimiet overschreden")
} else {
fmt.Println("Uitvoeringsfout:", err)
}
}
In dit voorbeeld moet de functie doSomething de context ondersteunen en haar werk onderbreken als de tijd is verstreken.