v8  9.4.146 (node 16.13.0)
V8 is Google's open source JavaScript engine
CppHeap Class Reference

#include <v8-cppgc.h>

Public Member Functions

virtual ~CppHeap ()=default
cppgc::AllocationHandle & GetAllocationHandle ()
cppgc::HeapHandle & GetHeapHandle ()
void Terminate ()
cppgc::HeapStatistics CollectStatistics (cppgc::HeapStatistics::DetailLevel detail_level)
void CollectCustomSpaceStatisticsAtLastGC (std::vector< cppgc::CustomSpaceIndex > custom_spaces, std::unique_ptr< CustomSpaceStatisticsReceiver > receiver)
void EnableDetachedGarbageCollectionsForTesting ()
void CollectGarbageForTesting (cppgc::EmbedderStackState stack_state)

Static Public Member Functions

static std::unique_ptr< CppHeapCreate (v8::Platform *platform, const CppHeapCreateParams &params)


class internal::CppHeap

Detailed Description

A heap for allocating managed C++ objects.

Definition at line 88 of file v8-cppgc.h.

Constructor & Destructor Documentation

◆ ~CppHeap()

virtual ~CppHeap ( )

Member Function Documentation

◆ CollectCustomSpaceStatisticsAtLastGC()

void CollectCustomSpaceStatisticsAtLastGC ( std::vector< cppgc::CustomSpaceIndex custom_spaces,
std::unique_ptr< CustomSpaceStatisticsReceiver receiver 

Collects statistics for the given spaces and reports them to the receiver.

custom_spacesa collection of custom space indicies.
receiveran object that gets the results.

◆ CollectGarbageForTesting()

void CollectGarbageForTesting ( cppgc::EmbedderStackState  stack_state)

Performs a stop-the-world garbage collection for testing purposes.

stack_stateThe stack state to assume for the garbage collection.

◆ CollectStatistics()

cppgc::HeapStatistics CollectStatistics ( cppgc::HeapStatistics::DetailLevel  detail_level)
detail_levelspecifies whether should return detailed statistics or only brief summary statistics.
current CppHeap statistics regarding memory consumption and utilization.

◆ Create()

static std::unique_ptr<CppHeap> Create ( v8::Platform platform,
const CppHeapCreateParams params 

◆ EnableDetachedGarbageCollectionsForTesting()

void EnableDetachedGarbageCollectionsForTesting ( )

Enables a detached mode that allows testing garbage collection using cppgc::testing APIs. Once used, the heap cannot be attached to an Isolate anymore.

◆ GetAllocationHandle()

cppgc::AllocationHandle& GetAllocationHandle ( )
the opaque handle for allocating objects using MakeGarbageCollected().

◆ GetHeapHandle()

cppgc::HeapHandle& GetHeapHandle ( )
the opaque heap handle which may be used to refer to this heap in other APIs. Valid as long as the underlying CppHeap is alive.

◆ Terminate()

void Terminate ( )

Terminate clears all roots and performs multiple garbage collections to reclaim potentially newly created objects in destructors.

After this call, object allocation is prohibited.

Friends And Related Function Documentation

◆ internal::CppHeap

friend class internal::CppHeap

Definition at line 151 of file v8-cppgc.h.

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