Condividi tramite


Funzione ExSetResourceOwnerPointer (wdm.h)

La routine ExSetResourceOwnerPointer imposta il puntatore del thread proprietario per una risorsa executive.

Sintassi

void ExSetResourceOwnerPointer(
  [in, out] PERESOURCE Resource,
  [in]      PVOID      OwnerPointer
);

Parametri

[in, out] Resource

Puntatore a una risorsa executive di proprietà del thread corrente.

[in] OwnerPointer

Puntatore a un puntatore del thread proprietario di tipo ERESOURCE_THREAD (per altri requisiti, vedere la sezione Osservazioni seguente).

Valore restituito

nessuno

Osservazioni

ExSetResourceOwnerPointer, usato insieme a ExReleaseResourceForThreadLite, fornisce un mezzo per un thread (che funge da thread di gestione risorse) per acquisire e rilasciare risorse da usare da un altro thread (fungendo da thread utente di risorse).

Dopo aver chiamato ExSetResourceOwnerPointer per una risorsa specifica, l'unica altra routine che può essere chiamata per tale risorsa è ExReleaseResourceForThreadLite.

Il thread di Resource Manager acquisisce la proprietà della risorsa e passa la proprietà al thread utente chiamando ExSetResourceOwnerPointer. Il chiamante deve allocare la memoria per il valore ERESOURCE_THREAD a cui punta OwnerPointer nella memoria di sistema e questa memoria deve rimanere allocata fino a quando exReleaseResourceForThreadLite non restituisce. Il chiamante deve anche impostare i due bit di ordine basso del valore ERESOURCE_THREAD puntato da OwnerPointer su uno. Questa codifica viene usata internamente dai servizi risorse per distinguere tra indirizzi di proprietario e thread.

Quando il thread utente viene eseguito con la risorsa, il thread di Resource Manager rilascia la proprietà della risorsa del thread utente chiamando ExReleaseResourceForThreadLite. Il parametro di input ResourceThreadId viene impostato sul valore del parametro OwnerPointer usato nella chiamata precedente a ExSetResourceOwnerPointer che ha assegnato la proprietà del thread di lavoro della risorsa.

Requisiti

Requisito Valore
Client minimo supportato Disponibile a partire da Windows 2000.
Piattaforma di destinazione Universale
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Libreria NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI HwStorPortProhibitedDDIs(storport)

Vedi anche

ExReleaseResourceForThreadLite