Simulation du service Weather via Dispatcher, exemple
Mise à jour : novembre 2007
Cet exemple illustre la manière d'empêcher qu'une application ne réponde plus en raison d'une opération de blocage.
Cet exemple simule une application du service météo qui interroge une ressource distante. Lorsque l'application interroge la ressource distante, l'Interface utilisateur ne doit pas cesser de répondre. Pour résoudre ce problème, un thread d'arrière-plan extrait les informations. Lorsque le thread a terminé, il transmet une tâche au répartiteur du thread de l'Interface utilisateur.
Un thread d'arrière-plan est créé par l'appel de BeginInvoke sur l'objet délégué. Étant donné qu'il s'agit d'un appel asynchrone utilisant un thread threadpool, aucune autre tâche n'est nécessaire pour la création des threads.
Le délai de connexion au service distant est simulé par la mise en veille du thread de travail. Lorsque la tâche est terminée, il en déclenche une autre dans le Dispatcher du thread de l'Interface utilisateur pour procéder à la mise à jour de l'Interface utilisateur avec les informations des prévisions météorologiques.
Cet exemple présente également les fonctions d'animation et les tables de montage séquentiel. La plupart des animations sont définies dans le fichier XAML, alors que le début et la fin d'une animation sont gérés dans le code-behind.
Pour plus d'informations sur cet exemple, consultez Modèle de thread.
Cet exemple présente une fonctionnalité spécifique de Windows Presentation Foundation et, par conséquent, ne suit pas les meilleures pratiques de développement d'applications. Pour un traitement complet des meilleures pratiques de développements d'applications Windows Presentation Foundation (WPF) et Microsoft .NET Framework, reportez-vous, selon les cas, aux documents suivants :
Accessibilité - Meilleures pratiques d'accessibilité
Localisation - Vue d'ensemble de la globalisation et de la localisation WPF
Performances - Optimisation des performances des applications WPF
Sécurité - Sécurité de Windows Presentation Foundation
Génération de l'exemple
Installez le Kit de développement logiciel (SDK) Windows et ouvrez la fenêtre Commande de son environnement de génération. Dans le menu Démarrer, pointez sur Tous les programmes et sur Microsoft Windows SDK, puis cliquez sur CMD Shell.
Téléchargez l'exemple, généralement à partir de la documentation du Kit de développement logiciel (SDK), vers votre disque dur local.
Pour générer l'exemple à partir de la fenêtre Commande de l'environnement de génération, accédez au répertoire source de l'exemple. À l'invite de commandes, tapez MSBUILD.
Pour générer l'exemple dans Microsoft Visual Studio, chargez l'exemple de solution ou de fichier projet, puis appuyez sur CTRL+MAJ+B.
Exécution de l'exemple
Pour exécuter l'exemple compilé à partir de la fenêtre Commande de l'environnement de génération, exécutez le fichier .exe du dossier Bin\Debug ou Bin\Release contenu sous le dossier du code source de l'exemple.
Pour exécuter l'exemple compilé avec le débogage dans Visual Studio, appuyez sur F5.
Voir aussi
Tâches
Application monothread avec calcul de longue durée, exemple
Navigateur Web multithreading, exemple
Désactiver une source de commande via une horloge système, exemple