Loading...
Searching...
No Matches
Public Member Functions | List of all members
cppgc::testing::StandaloneTestingHeap Class Referencefinal

#include <testing.h>

Public Member Functions

 StandaloneTestingHeap (HeapHandle &)
 
void StartGarbageCollection ()
 
bool PerformMarkingStep (EmbedderStackState stack_state)
 
void FinalizeGarbageCollection (EmbedderStackState stack_state)
 
void ToggleMainThreadMarking (bool should_mark)
 
void ForceCompactionForNextGarbageCollection ()
 

Detailed Description

Testing interface for managed heaps that allows for controlling garbage collection timings. Embedders should use this class when testing the interaction of their code with incremental/concurrent garbage collection.

Constructor & Destructor Documentation

◆ StandaloneTestingHeap()

cppgc::testing::StandaloneTestingHeap::StandaloneTestingHeap ( HeapHandle )
explicit

Member Function Documentation

◆ FinalizeGarbageCollection()

void cppgc::testing::StandaloneTestingHeap::FinalizeGarbageCollection ( EmbedderStackState  stack_state)

Finalize the current garbage collection cycle atomically. Assumes that garbage collection is in progress.

Parameters
stack_stateThe state of the stack for finalizing the garbage collection cycle.

◆ ForceCompactionForNextGarbageCollection()

void cppgc::testing::StandaloneTestingHeap::ForceCompactionForNextGarbageCollection ( )

Force enable compaction for the next garbage collection cycle.

◆ PerformMarkingStep()

bool cppgc::testing::StandaloneTestingHeap::PerformMarkingStep ( EmbedderStackState  stack_state)

Perform an incremental step. This will also schedule concurrent steps if needed.

Parameters
stack_stateThe state of the stack during the step.

◆ StartGarbageCollection()

void cppgc::testing::StandaloneTestingHeap::StartGarbageCollection ( )

Start an incremental garbage collection.

◆ ToggleMainThreadMarking()

void cppgc::testing::StandaloneTestingHeap::ToggleMainThreadMarking ( bool  should_mark)

Toggle main thread marking on/off. Allows to stress concurrent marking (e.g. to better detect data races).

Parameters
should_markDenotes whether the main thread should contribute to marking. Defaults to true.

The documentation for this class was generated from the following file: