次の方法で共有


RtlIsGenericTableEmptyAvl 関数 (ntddk.h)

RtlIsGenericTableEmptyAvl ルーチンは、ジェネリック テーブルが空かどうかを判断します。

構文

NTSYSAPI BOOLEAN RtlIsGenericTableEmptyAvl(
  [in] PRTL_AVL_TABLE Table
);

パラメーター

[in] Table

ジェネリック テーブルへのポインター (RTL_GENERIC_TABLE)。 テーブルは RtlIsGenericTableEmptyAvl を呼び出して初期化されている必要があります。

戻り値

RtlIsGenericTableEmptyAvl は、テーブルに 1 つ以上の要素が含まれている場合は FALSE を 返し、それ以外の場合は TRUE を返します。

注釈

既定では、オペレーティング システムは splay ツリーを使用して汎用テーブルを実装しますが、 RtlIsGenericTableEmptyAvl ルーチンは Adelson-Velsky/Landis (AVL) ツリーでのみ機能します。 ドライバーでツリーを表示する代わりに AVL ツリーを使用するように汎用テーブル ルーチンを構成するには、 Ntddk.h を含める前に、共通ヘッダー ファイルに次の define ステートメントを挿入します。

#define RTL_USE_AVL_TABLES 0

RTL_USE_AVL_TABLESが定義されていない場合は、汎用表ルーチンの AVL 形式を使用する必要があります。 たとえば、 RtlIsGenericTableEmpty の代わりに RtlIsGenericTableEmptyAvl ルーチン 使用します。 RtlIsGenericTableEmptyAvl の呼び出しでは、呼び出し元はRTL_GENERIC_TABLEではなく、RTL_AVL_TABLEテーブル構造渡す必要があります。

Table で呼び出し元によって割り当てられたメモリがページング可能な場合、RtlIsGenericTableEmptyAvl の呼び出し元は、≤ APC_LEVELで実行されている必要があります。

要件

要件
サポートされている最小のクライアント Windows XP 以降で使用できます。
対象プラットフォーム ユニバーサル
Header ntddk.h (Ntddk.h、Ntifs.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL <= APC_LEVEL (「解説」セクションを参照)

こちらもご覧ください

RtlInitializeGenericTableAvl