Fungsi RtlFindClearBitsAndSet (wdm.h)

RtlFindClearBitsAndSet rutin mencari berbagai bit yang jelas dari ukuran yang diminta dalam bitmap dan mengatur semua bit dalam rentang ketika telah ditemukan.

Sintaks

NTSYSAPI ULONG RtlFindClearBitsAndSet(
  [in] PRTL_BITMAP BitMapHeader,
  [in] ULONG       NumberToFind,
  [in] ULONG       HintIndex
);

Parameter

[in] BitMapHeader

Penunjuk ke struktur RTL_BITMAP yang menjelaskan bitmap. Struktur ini harus diinisialisasi oleh rutinitas RtlInitializeBitMap .

[in] NumberToFind

Menentukan berapa banyak bit yang jelas yang berdampingan akan memenuhi permintaan ini.

[in] HintIndex

Menentukan posisi bit berbasis nol untuk mulai mencari rentang bit yang jelas dari ukuran yang diberikan.

Nilai kembali

RtlFindClearBitsAndSet mengembalikan indeks bit awal berbasis nol untuk rentang bit yang jelas dari ukuran yang diminta yang ditetapkannya, atau mengembalikan 0xFFFFFFFF jika tidak dapat menemukan rentang seperti itu dalam variabel bitmap yang diberikan.

Keterangan

Untuk panggilan yang berhasil, posisi bit yang dikembalikan belum tentu setara dengan HintIndex yang diberikan. Jika perlu, RtlFindClearBitsAndSet mencari seluruh bitmap untuk menemukan rentang bit yang jelas dari ukuran yang diminta. Namun, mulai mencari rentang yang diminta dari HintIndex, sehingga penelepon dapat mengatur ulang rentang seperti itu lebih cepat ketika mereka dapat memberikan petunjuk yang sesuai tentang tempat untuk mulai mencari.

Pemanggil RtlFindClearBitsAndSet harus berjalan di IRQL <= APC_LEVEL jika memori yang berisi variabel bitmap dapat dipaginasi atau memori di BitMapHeader dapat dipaginasi. Jika tidak, RtlFindClearBitsAndSet dapat dipanggil di IRQL apa pun.

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 <= APC_LEVEL (Lihat bagian Keterangan)

Lihat juga

RTL_BITMAP

RtlAreBitsClear

RtlFindClearBits

RtlFindClearRuns

RtlFindFirstRunClear

RtlFindLastBackwardRunClear

RtlFindLongestRunClear

RtlFindNextForwardRunClear

RtlInitializeBitMap

RtlNumberOfClearBits

RtlSetAllBits

RtlSetBits