Junior — Middle
Wat is het doel van de terugkerende functie Cancel in de methode Context.WithTimeout?
sobes.tech AI
Antwoord van AI
De functie Cancel, geretourneerd door de methode context.WithTimeout, is bedoeld om de context expliciet te annuleren voordat de ingestelde timeout verloopt. Het aanroepen van deze functie vrijwaart de resources die aan de context zijn gekoppeld en signaleert aan alle luisteraars dat ze het werk moeten stoppen. Dit is belangrijk om resourcelekken te voorkomen, vooral als de operatie eerder dan de timeout wordt voltooid.
Voorbeeld van gebruik:
ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
defer cancel() // zorgt voor het vrijmaken van resources
// gebruik ctx in operaties die kunnen worden geannuleerd