J'ai une application WPF qui, au démarrage, init un serveur de canaux nommés sur un thread séparé.
À un certain moment, les clients pipe nommés envoient des informations à ce thread qui doit à son tour mettre à jour une collection Observable dans le ViewModel.
Si vous tentez de le faire directement, vous obtenez une exception "Impossible d'accéder à la collection de cette heure sur un thread non distribué" (je paraphrase un peu l'erreur).
Quoi qu'il en soit, comment puis-je obtenir le gestionnaire du thread de tuyau nommé sur le thread UI. Je ne semble pas avoir un objet Dispatcher qui traîne que je peux utiliser pour invoquer une méthode. Suis-je censé mettre en cache au démarrage dans un statique ou singleton ou un tel.
Le DispatcherSynchronizationContext semble intéressant mais pas sûr comment en obtenir un dans ma vue et stocker dans mon modèle Voir.Thread WPF Dispatcher
0
A
Répondre
0
Vous êtes toujours en mesure d'accéder au répartiteur de l'instance Current d'application par
var dispatcher = Application.Current.Dispatcher;
Dès que vous avez, vous pouvez exécuter des actions sur le thread d'interface utilisateur par Invoke ou BeginInvoke.
Questions connexes
- 1. WPF - Dispatcher PushFrame()
- 2. WPF Dispatcher BeginInvoke commande garantie
- 3. WPF Dispatcher Operations Leak
- 4. WPF Dispatcher et exécution en arrière-plan
- 5. WPF erreur dispatcher dans la propriété tag
- 6. WPF Dispatcher ne fonctionne pas comme BGWorker
- 7. Comment dispatcher fonctionne-t-il un thread?
- 8. Dispatcher au fil de discussion des relations dans WPF
- 9. Dispatcher n'est pas requis dans MVVM patern avec WPF?
- 10. Performances des temporisations Dispatcher dans wpf
- 11. Comment fonctionne le thread Dispatcher dans wpf un contrôle d'interface utilisateur
- 12. Dispatcher et fils de travail
- 13. .NET Create New Dispatcher
- 14. Récupérer WPF Dispatcher à partir de la bibliothèque
- 15. Embedded IronPython - Dispatcher Problème
- 16. Comment faire pour arrêter le thread Dispatcher dans Akka ActorSystem
- 17. Dispatcher vs multithread
- 18. Détecter si le code s'exécute sur le thread d'arrière-plan ou le thread UI (Dispatcher)
- 19. WPF UI Thread Status
- 20. WPF Thread issue
- 21. WPF Dispatcher Invoke la valeur de retour est toujours null
- 22. Quelle est l'utilité d'un objet Dispatcher dans WPF?
- 23. Test de problème NMock par rapport à WPF et Dispatcher
- 24. WPF Gui rafraîchir de thread différent
- 25. Travailler avec Dispatcher dans WP7
- 26. Impossible d'utiliser dispatcher sur WP7
- 27. WPF Multithreading: Utilisation de Dispatcher mais l'interface utilisateur se bloque toujours?
- 28. Dispatcher ne s'affiche pas Application Windows Forms C#
- 29. thread Invocation en C# .WPF
- 30. Opérations WPF et cross thread