Junior — Middle
Wat is het doel van de Done-methode in de context van softwareontwikkeling?
sobes.tech AI
Antwoord van AI
In Go wordt de Done-methode meestal geassocieerd met de context (context.Context) en wordt gebruikt om het einde van een operatie of de annulering ervan aan te geven. Wanneer de Done() methode wordt aangeroepen, geeft deze een kanaal terug dat wordt gesloten wanneer de operatie moet worden onderbroken (bijvoorbeeld door een timeout of annulering). Dit stelt goroutines in staat om naar dit kanaal te luisteren en correct af te ronden.
Voorbeeld van gebruik:
ctx, cancel := context.WithCancel(context.Background())
go func() {
select {
case <-ctx.Done():
fmt.Println("Operatie geannuleerd")
return
// andere gevallen
}
}()
// later
cancel() // signaal voor beëindiging
Op deze manier helpt de Done-methode bij het beheren van de levensduur van operaties en het voorkomen van resource leaks.