ExSetResourceOwnerPointer 函式 (wdm.h)
ExSetResourceOwnerPointer 例程會設定主管資源的擁有者線程指標。
語法
void ExSetResourceOwnerPointer(
[in, out] PERESOURCE Resource,
[in] PVOID OwnerPointer
);
參數
[in, out] Resource
目前線程所擁有之執行資源的指標。
[in] OwnerPointer
ERESOURCE_THREAD類型的擁有者線程指標指標(如需其他需求,請參閱下列一節)。
傳回值
沒有
言論
ExSetResourceOwnerPointer,與 ExReleaseResourceForThreadLite搭配使用,提供一個線程的方法(做為資源管理員線程),以取得和釋放另一個線程使用的資源(做為資源使用者線程)。
針對特定資源呼叫 ExSetResourceOwnerPointer 之後,唯一可以針對該資源呼叫的例程是 ExReleaseResourceForThreadLite。
資源管理員線程會取得資源的擁有權,並藉由呼叫 exSetResourceOwnerPointer ,將擁有權傳遞給用戶線程。 呼叫端必須配置系統記憶體中 OwnerPoint er 所指向之ERESOURCE_THREAD值的記憶體,而且此記憶體必須維持配置,直到傳回 exReleaseResourceForThreadLite 傳回 為止。 呼叫端也必須將 OwnerPoint er 所指向之ERESOURCE_THREAD值的兩個低序位設定為一個 ,資源服務會在內部使用此編碼來區分擁有者和線程位址。
使用資源完成使用者線程時,資源管理員線程會呼叫 ExReleaseResourceForThreadLite來釋放使用者線程的資源擁有權。 ResourceThreadId 輸入參數會設定為先前呼叫 ExSetResourceOwnerPointer 給資源背景工作線程擁有權的 OwnerPointer 參數的值。
要求
要求 | 價值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平臺 | 普遍 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
連結庫 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIs(storport) |