Junior — Middle
Quelles fonctionnalités et capacités supplémentaires ont été intégrées dans les méthodes de contexte avec l'apparition de Go 1.21?
sobes.tech IA
Réponse de l'IA
Dans Go 1.21, des améliorations ont été apportées au package context qui étendent les capacités de gestion du contexte :
- La prise en charge de l'annulation avec délai d'attente et limite de temps est devenue plus flexible.
- De nouvelles fonctions ont été ajoutées pour combiner plusieurs contextes de manière pratique.
- La performance a été améliorée et la consommation de mémoire réduite lors de la manipulation des contextes.
Par exemple, il est maintenant possible de créer des contextes qui s'annulent automatiquement lorsque plusieurs conditions sont remplies, ce qui simplifie la gestion du cycle de vie des opérations :
ctx1, cancel1 := context.WithCancel(context.Background())
ctx2, cancel2 := context.WithTimeout(context.Background(), time.Second*10)
ctx := context.Merge(ctx1, ctx2) // fonction hypothétique pour la fusion
// Utiliser ctx dans des requêtes ou des goroutines
// Annuler les deux contextes
cancel1()
cancel2()
(À noter que la syntaxe exacte et les fonctions peuvent varier, car les nouvelles fonctionnalités dépendent de l'implémentation spécifique dans Go 1.21.)