Maison >développement back-end >C++ >Quand devriez-vous vous débarrasser d'un CancellationTokenSource ?
Libérer correctement la ressource CancellationTokenSource
Dans .NET, CancellationTokenSource
est utilisé pour gérer l'annulation des threads et doit être publié explicitement pour éviter les fuites de ressources. Bien que cette étape soit souvent omise dans les exemples MSDN, la gestion correcte des ressources est essentielle.
Pourquoi devez-vous libérer CancellationTokenSource ?
CancellationTokenSource
Utilisez des ressources non gérées (par exemple, les événements du noyau) qui doivent être nettoyées pour éviter les fuites de mémoire. CancellationTokenSource
car il n'a pas de finaliseur. Méthode de libération correcte
using
pour libérer automatiquement la source du jeton. ContinueWith
à la tâche qui appelle Dispose()
sur la source du jeton. Dispose()
sur la source du jeton une fois la tâche parallèle ou la requête PLINQ terminée. Réutilisabilité
CancellationTokenSource
ne peut pas être réutilisé. Après avoir démarré une tâche ou une requête PLINQ, créez une nouvelle source de jeton. La réinitialisation de IsCancellationRequested
et Token
n'est pas prise en charge.
Stratégies recommandées
Pour gérer efficacement plusieurs CancellationTokenSource
instances, considérez les éléments suivants :
using
autant que possible (par exemple, lorsque vous attendez des tâches parallèles). ContinueWith
ou une version explicite) . Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!