Partager via


Fonction MFAllocateWorkQueueEx (mfapi.h)

Crée une file d’attente de travail. Cette fonction étend les fonctionnalités de la fonction MFAllocateWorkQueue en permettant de créer une file d’attente de travail avec une boucle de message.

Syntaxe

HRESULT MFAllocateWorkQueueEx(
  [in]  MFASYNC_WORKQUEUE_TYPE WorkQueueType,
  [out] DWORD                  *pdwWorkQueue
);

Paramètres

[in] WorkQueueType

Membre de l’énumération MFASYNC_WORKQUEUE_TYPE , spécifiant le type de file d’attente de travail à créer.

Valeur Signification
MF_MULTITHREADED_WORKQUEUE
Créez une file d’attente de travail multithread. En règle générale, les applications ne doivent pas créer de files d’attente multithread privées. Utilisez plutôt les files d’attente multithread de la plateforme. Pour plus d’informations, consultez Améliorations apportées à la file d’attente de travail et au threading.
MF_STANDARD_WORKQUEUE
Créez une file d’attente de travail sans boucle de message. L’utilisation de cet indicateur équivaut à appeler MFAllocateWorkQueue.
MF_WINDOW_WORKQUEUE
Créez une file d’attente de travail avec une boucle de message. Le thread qui distribue les éléments de travail pour cette file d’attente appelle également PeekMessage et DispatchMessage. Utilisez cette option si votre rappel effectue des actions qui nécessitent une boucle de message.

[out] pdwWorkQueue

Reçoit un identificateur pour la file d’attente de travail qui a été créée.

Valeur retournée

La fonction retourne un HRESULT. Les valeurs possibles sont notamment celles figurant dans le tableau suivant.

Code de retour Description
S_OK
La fonction a réussi.
E_FAIL
L’application a dépassé le nombre maximal de files d’attente de travail.
E_INVALIDARG
Argument non valide.
MF_E_SHUTDOWN
L’application n’a pas appelé MFStartup, ou l’application a déjà appelé MFShutdown.

Remarques

Lorsque vous avez terminé d’utiliser la file d’attente de travail, appelez MFUnlockWorkQueue.

La fonction MFAllocateWorkQueue équivaut à appeler MFAllocateWorkQueueEx avec la valeur MF_STANDARD_WORKQUEUE pour le paramètre WorkQueueType .

Cette fonction est disponible sur Windows Vista si le Supplément de mise à jour de la plateforme pour Windows Vista est installé.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Supplément Windows 7, Windows Vista et mise à jour de plateforme pour Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête mfapi.h
Bibliothèque Mfplat.lib
DLL Mfplat.dll

Voir aussi

MFPutWorkItem

MFPutWorkItemEx

Fonctions Media Foundation

Files d’attente de travail