VideoPortWaitForSingleObject, fonction (video.h)
La fonction VideoPortWaitForSingleObject place le thread actuel dans un état d’attente jusqu’à ce que l’objet dispatch donné soit défini sur l’état signalé, ou (éventuellement) jusqu’à ce que l’attente expire.
Syntaxe
VIDEOPORT_API VP_STATUS VideoPortWaitForSingleObject(
[in] IN PVOID HwDeviceExtension,
[in] IN PVOID Object,
[in] IN PLARGE_INTEGER Timeout
);
Paramètres
[in] HwDeviceExtension
Pointeur vers l’extension de périphérique du pilote miniport.
[in] Object
Pointeur vers l’objet d’événement.
[in] Timeout
(Facultatif) Pointeur vers une valeur de délai d’attente qui spécifie l’heure absolue ou relative à laquelle l’attente doit être terminée. Une valeur négative spécifie un intervalle d’attente par rapport à l’heure actuelle. La valeur doit être exprimée en unités de 100 nanosecondes. Les temps d’expiration absolus suivent les modifications apportées à l’heure système ; les temps d’expiration relatifs ne sont pas affectés par les changements d’heure système.
Valeur retournée
VideoPortWaitForSingleObject retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
ERROR_INVALID_PARAMETER | L’un des paramètres n’est pas valide ou l’appel a tenté d’attendre un événement utilisateur mappé. |
NO_ERROR | L’objet d’événement spécifié dans le paramètre pObject a satisfait à l’attente. |
WAIT_TIMEOUT | Un délai d’attente s’est produit avant que l’objet événement soit défini sur l’état signalé. Cette valeur peut être retournée lorsque le jeu de conditions d’attente spécifié ne peut pas être immédiatement rempli et que le délai d’expiration est défini sur zéro. |
Remarques
Le pilote miniport ne doit pas tenter d’attendre un événement utilisateur mappé.
Les appelants de VideoPortWaitForSingleObject doivent s’exécuter sur IRQL <= DISPATCH_LEVEL. En règle générale, l’appelant s’exécute à IRQL = PASSIVE_LEVEL et dans un contexte de thread nonarbitrary. Un appel à cette fonction lors de l’exécution sur IRQL = DISPATCH_LEVEL est valide si et uniquement si l’appelant spécifie une valeur de délai d’expiration de zéro. Autrement dit, un pilote miniport ne doit pas attendre un intervalle différent de zéro à IRQL = DISPATCH_LEVEL.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows XP et versions ultérieures des systèmes d’exploitation Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | video.h (incluez Video.h) |
Bibliothèque | Videoprt.lib |
DLL | Videoprt.sys |
IRQL | <= DISPATCH_LEVEL (voir la section Notes) |