MISE À JOUR: Le temporisateur est un temporisateur System.Threading.Compact Framework: Timer.Dispose ne bloque pas
Nous avons un contrôle de l'interface utilisateur qui est mis à jour sur Tick Timer. Sur la disposition de notre contrôle, nous appelons timer.Dispose(). Nous rencontrons occasionnellement ObjectDisposedOExceptions lorsque le temporisateur se déclenche après que le contrôle de l'interface utilisateur a été appelé.
Je vois cela dans l'msdn docs. Vous pouvez utiliser la méthode Dispose la surcharge de la méthode
« Callbacks peut se produire après la méthode Dispose() a été appelé, parce que les callbacks files d'attente de minuterie pour l'exécution par des fils de pool de threads (WaitHandle) surcharge de méthode pour attendre que tous les rappels soient terminés. " Toutefois, le Compact Framework n'a pas accès à cette méthode surchargée.
Quelle est la meilleure solution pour cette situation? Existe-t-il un moyen de rendre notre méthode Dispose jusqu'à ce que la minuterie ait été complètement éliminée? D'autres suggestions?
Merci!
Nous avons essayé de vérifier si le contrôle était disposé sur rappel. Cela n'a pas aidé - le mieux que nous puissions dire au contrôle a été disposé alors que nous étions réellement dans la méthode de rappel. – Steve