Quantum 3 3.1.0

Public Member Functions | Public Attributes | List of all members
Quantum.Allocator.FrameHeapConfig Class Reference

Settings for the frame heap. More...

Public Member Functions

FrameHeapConfig Clone ()
 Clone the current config. More...
 

Public Attributes

int ExtraHeapCount = 0
 The number of additional heaps to create (useful if creating frames that are managed by you instead of Quantum). The default is 0. More...
 
HeapManagement Management = HeapManagement.PageBased
 Determines the memory management strategy the Quantum heap will use. The default is "page-based". More...
 
int PageCount = 256
 The number of pages to allocate for each heap. The default is 256. More...
 
int PageShift = 15
 Determines the size of a heap page (expressed as the N in 2^N). The default is 15 (32 KiB). More...
 
HeapPageSize PageSize = HeapPageSize.Size_8_KiB
 Determines the size of a heap page. The default is 8 KiB. More...
 
int SegmentCapacity = 32
 The maximum number of segments each heap can allocate in order to grow. The default is 32. More...
 
HeapSegmentSize SegmentSize = HeapSegmentSize.Size_2_MiB
 Determines the size of a heap segment. The default is 2 MiB. More...
 
HeapTrackingMode TrackingMode = HeapTrackingMode.DetectLeaks
 Determines the degree that frame heap allocations are tracked in debug mode. The default is "detect leaks". More...
 

Detailed Description

Settings for the frame heap.

Member Function Documentation

◆ Clone()

FrameHeapConfig Quantum.Allocator.FrameHeapConfig.Clone ( )
inline

Clone the current config.

Member Data Documentation

◆ TrackingMode

HeapTrackingMode Quantum.Allocator.FrameHeapConfig.TrackingMode = HeapTrackingMode.DetectLeaks

Determines the degree that frame heap allocations are tracked in debug mode. The default is "detect leaks".

◆ Management

HeapManagement Quantum.Allocator.FrameHeapConfig.Management = HeapManagement.PageBased

Determines the memory management strategy the Quantum heap will use. The default is "page-based".

◆ PageSize

HeapPageSize Quantum.Allocator.FrameHeapConfig.PageSize = HeapPageSize.Size_8_KiB

Determines the size of a heap page. The default is 8 KiB.

◆ SegmentSize

HeapSegmentSize Quantum.Allocator.FrameHeapConfig.SegmentSize = HeapSegmentSize.Size_2_MiB

Determines the size of a heap segment. The default is 2 MiB.

◆ SegmentCapacity

int Quantum.Allocator.FrameHeapConfig.SegmentCapacity = 32

The maximum number of segments each heap can allocate in order to grow. The default is 32.

◆ PageShift

int Quantum.Allocator.FrameHeapConfig.PageShift = 15

Determines the size of a heap page (expressed as the N in 2^N). The default is 15 (32 KiB).

◆ PageCount

int Quantum.Allocator.FrameHeapConfig.PageCount = 256

The number of pages to allocate for each heap. The default is 256.

◆ ExtraHeapCount

int Quantum.Allocator.FrameHeapConfig.ExtraHeapCount = 0

The number of additional heaps to create (useful if creating frames that are managed by you instead of Quantum). The default is 0.