Fungsi ExSetResourceOwnerPointer (wdm.h)

Rutinitas ExSetResourceOwnerPointer menetapkan penunjuk alur pemilik untuk sumber daya eksekutif.

Sintaks

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

Parameter

[in, out] Resource

Penunjuk ke sumber daya eksekutif yang dimiliki oleh utas saat ini.

[in] OwnerPointer

Penunjuk ke penunjuk alur pemilik jenis ERESOURCE_THREAD (untuk persyaratan tambahan, lihat bagian Keterangan berikut).

Nilai kembali

Tidak ada

Keterangan

ExSetResourceOwnerPointer, yang digunakan bersama dengan ExReleaseResourceForThreadLite, menyediakan sarana untuk satu utas (bertindak sebagai utas manajer sumber daya) untuk memperoleh dan merilis sumber daya untuk digunakan oleh utas lain (bertindak sebagai utas pengguna sumber daya).

Setelah memanggil ExSetResourceOwnerPointer untuk sumber daya tertentu, satu-satunya rutinitas lain yang dapat dipanggil untuk sumber daya tersebut adalah ExReleaseResourceForThreadLite.

Utas manajer sumber daya memperoleh kepemilikan sumber daya dan meneruskan kepemilikan ke utas pengguna dengan memanggil ExSetResourceOwnerPointer. Pemanggil harus mengalokasikan memori untuk nilai ERESOURCE_THREAD yang diarahkan oleh OwnerPointer dalam memori sistem, dan memori ini harus tetap dialokasikan sampai ExReleaseResourceForThreadLite kembali. Penelepon juga harus mengatur dua bit berurutan rendah dari nilai ERESOURCE_THREAD yang ditunjukkan oleh OwnerPointer ke satu — pengodean ini digunakan secara internal oleh layanan sumber daya untuk membedakan antara pemilik dan alamat utas.

Ketika utas pengguna selesai dengan sumber daya, utas resource manager merilis kepemilikan utas pengguna atas sumber daya dengan memanggil ExReleaseResourceForThreadLite. Parameter input ResourceThreadId diatur ke nilai parameter OwnerPointer yang digunakan dalam panggilan sebelumnya ke ExSetResourceOwnerPointer yang memberikan kepemilikan utas pekerja sumber daya.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 2000.
Target Platform Universal
Header wdm.h (termasuk Wdm.h, Ntddk.h, Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= DISPATCH_LEVEL
Aturan kepatuhan DDI HwStorPortProhibitedDDIs(storport)

Lihat juga

ExReleaseResourceForThreadLite