Partager via


CreateDispatcherQueueController, fonction (dispatcherqueue.h)

Crée un DispatcherQueueController. Utilisez dispatcherQueueController créé pour créer et gérer la durée de vie d’un DispatcherQueue afin d’exécuter des tâches en file d’attente dans l’ordre de priorité sur le thread de la file d’attente du répartiteur.

Syntaxe

HRESULT CreateDispatcherQueueController(
  [in]  DispatcherQueueOptions     options,
  [out] PDISPATCHERQUEUECONTROLLER *dispatcherQueueController
);

Paramètres

[in] options

Affinité de thread et type d’appartement COM pour le DispatcherQueueController créé. Pour plus d’informations, consultez les remarques.

[out] dispatcherQueueController

Contrôleur de file d’attente du répartiteur créé.

ImportantDispatcherQueueController est un objet WinRT.
 

Valeur retournée

S_OK de succès ; sinon un code d’échec.

Remarques

Introduit dans Windows 10, version 1709.

Si options.threadType est DQTYPE_THREAD_DEDICATED, cette fonction crée un thread, l’initialise avec l’appartement COM spécifié et associe un DispatcherQueue à ce thread. La boucle d’événement de file d’attente du répartiteur s’exécute sur le nouveau thread dédié jusqu’à ce que la file d’attente du répartiteur soit explicitement arrêtée. Pour éviter les fuites de thread et de mémoire, appelez DispatcherQueueController.ShutdownQueueAsync lorsque vous avez terminé la file d’attente du répartiteur.

Si options.threadType est DQTYPE_THREAD_CURRENT, un DispatcherQueue est créé et associé au thread actuel. Une erreur se produit s’il existe déjà un DispatcherQueue associé au thread actuel. Le thread actuel doit pomper les messages pour permettre à la file d’attente du répartiteur de distribuer les tâches. Avant la fermeture du thread actuel, il doit appeler DispatcherQueueController.ShutdownQueueAsync et continuer à pomper les messages jusqu’à ce que l’IAsyncAction se termine.

Cet appel ne retourne pas tant que dispatcherQueueController et le nouveau thread (le cas échéant) n’ont pas été créés.

ImportantDispatcherQueueController et dispatcherQueue associé sont des objets WinRT. Consultez leur documentation pour plus d’informations sur l’utilisation.
 

Configuration requise

   
Plateforme cible Windows
En-tête dispatcherqueue.h
Bibliothèque CoreMessaging.lib
DLL CoreMessaging.dll

Voir aussi

DispatcherQueue

DispatcherQueueController