ExSetResourceOwnerPointer 函式 (wdm.h)

ExSetResourceOwnerPointer 例程會設定主管資源的擁有者線程指標。

語法

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

參數

[in, out] Resource

目前線程擁有之主管資源的指標。

[in] OwnerPointer

ERESOURCE_THREAD (类型拥有者线程指针的指针,以取得其他需求,請參閱下列一節) 。

傳回值

備註

ExSetResourceOwnerPointerExReleaseResourceForThreadLite 搭配使用,提供一個線程的方法, (做為資源管理員線程) 取得和釋放資源,以供另一個線程使用 (做為資源使用者線程) 。

針對特定資源呼叫 ExSetResourceOwnerPointer 之後,唯一可以針對該資源呼叫的例程是 ExReleaseResourceForThreadLite

資源管理員線程會取得資源的擁有權,並藉由呼叫 ExSetResourceOwnerPointer 將擁有權傳遞給用戶線程。 呼叫端必須在系統記憶體中配置 OwnerPointer 所指向之ERESOURCE_THREAD值的記憶體,而且此記憶體必須維持配置,直到 ExReleaseResourceForThreadLite 傳回為止。 呼叫端也必須將 OwnerPointer 所指向之ERESOURCE_THREAD值的兩個低序位設定為一個 ,資源服務會在內部使用此編碼來區分擁有者和線程位址。

當使用者線程使用資源完成時,資源管理員線程會藉由呼叫 ExReleaseResourceForThreadLite 釋放使用者線程的資源擁有權。 ResourceThreadId 輸入參數會設定為先前呼叫 ExSetResourceOwnerPointer 時所使用的 OwnerPointer 參數值,該參數會提供資源的背景工作線程擁有權。

規格需求

需求
最低支援的用戶端 從 Windows 2000 開始提供。
目標平台 Universal
標頭 wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h)
程式庫 NtosKrnl.lib
Dll NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 HwStorPortProhibitedDIS (storport)

另請參閱

ExReleaseResourceForThreadLite