Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
[S’applique à KMDF et UMDF]
Le type d’énumération WDF_SYNCHRONIZATION_SCOPE spécifie comment l’infrastructure synchronise l’exécution des fonctions de rappel d’événement d’un objet.
Syntaxe
typedef enum _WDF_SYNCHRONIZATION_SCOPE {
WdfSynchronizationScopeInvalid = 0x00,
WdfSynchronizationScopeInheritFromParent,
WdfSynchronizationScopeDevice,
WdfSynchronizationScopeQueue,
WdfSynchronizationScopeNone
} WDF_SYNCHRONIZATION_SCOPE;
Constantes
WdfSynchronizationScopeInvalidValeur : 0x00 Réservé à l’utilisation du système. |
WdfSynchronizationScopeInheritFromParentL’infrastructure utilise la valeur d’étendue de synchronisation spécifiée pour l’objet parent de l’objet. Cette valeur est la valeur par défaut si un pilote ne spécifie pas de valeur WDF_SYNCHRONIZATION_SCOPE typée. |
WdfSynchronizationScopeDeviceL’infrastructure synchronise l’exécution des fonctions de rappel d’événement de tous les objets de file d’attente et de fichiers qui se trouvent sous un objet d’appareil dans la hiérarchie d’objets du pilote. En outre, si le pilote définit la AutomaticSerialization membre sur TRUE dans la structure de configuration d’un objet d’interruption, DPC, d’élément de travail ou de minuteur situé sous le même objet d’appareil, l’infrastructure synchronise également les fonctions de rappel de cet objet. L’infrastructure obtient le verrou de synchronisation de l’objet d’appareil avant d’appeler une fonction de rappel. Par conséquent, ces fonctions de rappel s’exécutent une par une. Toutefois, si le pilote crée plusieurs objets du même type, mais sous différents objets d’appareil, leurs fonctions de rappel d’événement peuvent s’exécuter simultanément sur un système multiprocesseur. |
WdfSynchronizationScopeQueueCette valeur affecte uniquement les objets de file d’attente. L’infrastructure synchronise les fonctions de rappel d’événement de l’objet file d’attente afin qu’une seule exécution à la fois. En outre, si le pilote définit AutomaticSerialization pour TRUE dans la structure de configuration d’un objet d’interruption, DPC, d’élément de travail ou de minuteur situé sous l’objet file d’attente ou son objet d’appareil parent, l’infrastructure synchronise également les fonctions de rappel de cet objet. L’infrastructure obtient le verrou de synchronisation de l’objet file d’attente avant d’appeler les fonctions de rappel qui appartiennent à l’objet. Si le pilote crée plusieurs objets de file d’attente, ses fonctions de rappel d’événements peuvent s’exécuter simultanément sur un système multiprocesseur. Pour les versions 1.9 et ultérieures du framework, un pilote doit définir WdfSynchronizationScopeQueue pour des objets de file d’attente individuels. Pour utiliser cette étendue avec les versions antérieures de l’infrastructure, le pilote doit définir WdfSynchronizationScopeQueue pour l’objet de périphérique parent et WdfSynchronizationScopeInheritFromParent pour l’objet de file d’attente. |
WdfSynchronizationScopeNoneL’infrastructure ne synchronise pas les fonctions de rappel d’événements de l’objet. Les fonctions de rappel peuvent donc s’exécuter simultanément sur un système multiprocesseur. |
Remarques
Les pilotes utilisent le type d’énumération WDF_SYNCHRONIZATION_SCOPE pour spécifier le membre SynchronizationScope de la structure WDF_OBJECT_ATTRIBUTES d’un objet.
Vous pouvez spécifier une valeur SynchronizationScope uniquement pour les objets suivants :
- Objets de pilote framework
- Objets d’appareil framework
- Objets de file d’attente d’infrastructure
Pour plus d’informations sur la synchronisation des fonctions de rappel d’événements d’un pilote, consultez Techniques de synchronisation pour Framework-Based Pilotes.
Spécifications
| Besoin | Valeur |
|---|---|
| version minimale de KMDF | 1.0 |
| version minimale de UMDF | 2.0 |
| En-tête | wdfobject.h (include Wdf.h) |