Partager via


IWDFObject ::AcquireLock, méthode (wudfddi.h)

[Avertissement : UMDF 2 est la dernière version d’UMDF et remplace UMDF 1. Tous les nouveaux pilotes UMDF doivent être écrits à l’aide d’UMDF 2. Aucune nouvelle fonctionnalité n’est ajoutée à UMDF 1 et la prise en charge d’UMDF 1 est limitée sur les versions plus récentes de Windows 10. Les pilotes Windows universels doivent utiliser UMDF 2. Pour plus d’informations, consultez Prise en main avec UMDF.]

La méthode AcquireLock empêche l’infrastructure d’appeler des méthodes d’interfaces qu’un pilote a inscrites.

Syntaxe

void AcquireLock();

Valeur de retour

None

Remarques

Si un pilote s’est configuré pour utiliser le schéma de verrouillage AcquireLock , l’infrastructure acquiert automatiquement le verrou « présentation » avant d’appeler le pilote. (Pour plus d’informations sur ce schéma de verrouillage, consultez Spécification d’un mode de synchronisation de rappel.) Les méthodes AcquireLock et IWDFObject ::ReleaseLock acquièrent et libèrent le verrou de présentation, respectivement. Les objets d’appareil d’infrastructure et les objets de file d’attente d’E/S du framework prennent actuellement en charge la méthode AcquireLock .

Le pilote appelle la méthode AcquireLock pour manipuler ses objets créés à partir de ses interfaces de rappel en dehors de l’étendue de rappel de manière thread-safe. La méthode AcquireLock représente une fonctionnalité avancée de l’infrastructure que la plupart des pilotes n’utiliseront pas, car une utilisation incorrecte peut entraîner des interblocages.

Le code non synchronisé peut appeler AcquireLock. Le pilote doit appeler sur les objets qui correspondent à son étendue de synchronisation.

Exemples

Pour obtenir un exemple de code montrant comment utiliser la méthode AcquireLock , consultez IWDFDevice ::SetPnpState.

Configuration requise

Condition requise Valeur
Fin de la prise en charge Non disponible dans UMDF 2.0 et versions ultérieures.
Plateforme cible Desktop (Expérience utilisateur)
Version UMDF minimale 1.5
En-tête wudfddi.h (inclure Wudfddi.h)
DLL WUDFx.dll

Voir aussi

IWDFObject

IWDFObject ::ReleaseLock