mmtk::plan::global

Type Alias NonMovingSpace

source
pub type NonMovingSpace<VM> = ImmixSpace<VM>;

Aliased Type§

struct NonMovingSpace<VM> {
    common: CommonSpace<VM>,
    pr: BlockPageResource<VM, Block>,
    pub chunk_map: ChunkMap,
    pub line_mark_state: AtomicU8,
    line_unavail_state: AtomicU8,
    pub reusable_blocks: ReusableBlockPool,
    pub(super) defrag: Defrag,
    lines_consumed: AtomicUsize,
    mark_state: u8,
    scheduler: Arc<GCWorkScheduler<VM>>,
    space_args: ImmixSpaceArgs,
}

Fields§

§common: CommonSpace<VM>§pr: BlockPageResource<VM, Block>§chunk_map: ChunkMap

Allocation status for all chunks in immix space

§line_mark_state: AtomicU8

Current line mark state

§line_unavail_state: AtomicU8

Line mark state in previous GC

§reusable_blocks: ReusableBlockPool

A list of all reusable blocks

§defrag: Defrag

Defrag utilities

§lines_consumed: AtomicUsize

How many lines have been consumed since last GC?

§mark_state: u8

Object mark state

§scheduler: Arc<GCWorkScheduler<VM>>

Work packet scheduler

§space_args: ImmixSpaceArgs

Some settings for this space