Partager via


KeSetTargetProcessorDpc, fonction (wdm.h)

La routine KeSetTargetProcessorDpc spécifie le processeur sur lequel une routine DPC sera exécutée.

Syntaxe

void KeSetTargetProcessorDpc(
  [in, out] PRKDPC Dpc,
  [in]      CCHAR  Number
);

Paramètres

[in, out] Dpc

Pointeur vers l’objet DPC de l’appelant, qui KeInitializeDpc déjà initialisé.

[in] Number

Spécifie le nombre de base zéro du processeur cible sur lequel la DPC doit être mise en file d’attente et exécutée.

Valeur de retour

Aucun

Remarques

Sur les systèmes multiprocesseurs, chaque processeur a sa propre file d’attente DPC. La routine KeSetTargetProcessorDpc spécifie la file d’attente du processeur que le système doit utiliser lorsque le pilote appelle KeInsertQueueDpc ou IoRequestDpc pour mettre en file d’attente une DPC à exécuter ultérieurement.

À compter de Windows Vista, vous pouvez également utiliser KeSetTargetProcessorDpc pour spécifier le processeur cible pour DPCs threadés.

Un appel à KeSetTargetProcessorDpcEx qui se produit après qu’un objet DPC a été mis en file d’attente n’a aucun effet sur la sélection d’un processeur pour la routine DPC à exécuter. Pour contrôler la sélection du processeur cible, un appel KeSetTargetProcessorDpc doit se produire avant l’appel à KeInsertQueueDpc ou IoRequestDpc qui met en file d’attente l’objet DPC.

Pour plus d’informations sur les files d’attente DPC, consultez Organisation des files d’attente DPC.

Windows 7 et versions ultérieures de groupes de processeurs de prise en charge de Windows. Les pilotes conçus pour gérer des informations sur les groupes de processeurs doivent utiliser la routine KeSetTargetProcessorDpcEx, qui spécifie un groupe de processeurs, au lieu de KeSetTargetProcessorDpc, qui ne le fait pas. Toutefois, l’implémentation de KeSetTargetProcessorDpc dans Windows 7 et versions ultérieures de Windows fournit la compatibilité pour les pilotes écrits pour les versions antérieures de Windows, qui ne prennent pas en charge les groupes de processeurs. Dans cette implémentation, si Nombre est inférieur au nombre de processeurs logiques actifs dans le groupe 0, KeSetTargetProcessorDpc définit la cible du processeur dans le groupe 0 spécifié par Nombre. Sinon, la cible DPC ne change pas.

Exigences

Exigence Valeur
client minimum pris en charge Disponible à partir de Windows 2000.
plateforme cible Universel
d’en-tête wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
bibliothèque NtosKrnl.lib
DLL NtosKrnl.exe
IRQL N’importe quel niveau

Voir aussi

IoRequestDpc

KeGetCurrentProcessorNumber

KeInitializeDpc

KeInsertQueueDpc

KeSetImportanceDpc

KeSetTargetProcessorDpcEx