共用方式為


RTL_HEAP_PARAMETERS結構 (ntifs.h)

RTL_HEAP_PARAMETERS 結構包含建立堆積時要套用的參數。

語法

typedef struct _RTL_HEAP_PARAMETERS {
  ULONG                    Length;
  SIZE_T                   SegmentReserve;
  SIZE_T                   SegmentCommit;
  SIZE_T                   DeCommitFreeBlockThreshold;
  SIZE_T                   DeCommitTotalFreeThreshold;
  SIZE_T                   MaximumAllocationSize;
  SIZE_T                   VirtualMemoryThreshold;
  SIZE_T                   InitialCommit;
  SIZE_T                   InitialReserve;
  PRTL_HEAP_COMMIT_ROUTINE CommitRoutine;
  SIZE_T                   Reserved[2];
} RTL_HEAP_PARAMETERS, *PRTL_HEAP_PARAMETERS;

成員

Length

RTL_HEAP_PARAMETERS 結構的大小,以位元組為單位。

SegmentReserve

區段保留大小,以位元組為單位。 如果未指定此值,則會使用 1 MB。

SegmentCommit

區段認可大小,以位元組為單位。 如果未指定此值,則會使用 PAGE_SIZE * 2。

DeCommitFreeBlockThreshold

解除認可可用區塊閾值,以位元組為單位。 如果未指定此值,則會使用PAGE_SIZE。

DeCommitTotalFreeThreshold

取消認可總可用閾值,以位元組為單位。 如果未指定此值,則會使用 65536。

MaximumAllocationSize

大小,以位元組為單位,是可從堆積配置的最大記憶體區塊。 如果未指定此值,則會使用最高位址和最低位址之間的差異,而不是一頁。

VirtualMemoryThreshold

虛擬記憶體閾值,以位元組為單位。 如果未指定此值,或大於堆積區塊大小上限,則會使用堆積區塊大小上限0x7F000。

InitialCommit

要認可堆積的初始記憶體數量,以位元組為單位。 必須小於或等於 InitialReserve。 如果 HeapBaseCommitRoutine 為非 NULL,此參數會覆寫 commitSize 的值必須是非零值;否則會忽略它。

InitialReserve

要保留堆積的初始記憶體數量,以位元組為單位。 如果 HeapBaseCommitRoutine 為非 NULL,此參數會覆寫 reserveSize的值必須是非零值;否則會忽略它。

CommitRoutine

從堆積認可頁面之 RTL_HEAP_COMMIT_ROUTINE 例程的指標。 如果此參數不是 NULL,堆積必須是不可成長的。 如果 HeapBase 為 NULL,CommitRoutine 也必須是 NULL。

Reserved[2]

保留供系統使用。 驅動程式必須將此參數設定為零。

要求

要求 價值
最低支援的用戶端 Windows XP
標頭 ntifs.h

另請參閱

RTL_HEAP_COMMIT_ROUTINERtlCreateHeap