v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
cppgc::internal::HeapGrowing::HeapGrowingImpl Class Referencefinal
Inheritance diagram for cppgc::internal::HeapGrowing::HeapGrowingImpl:
Collaboration diagram for cppgc::internal::HeapGrowing::HeapGrowingImpl:

Public Member Functions

 HeapGrowingImpl (GarbageCollector *, StatsCollector *, cppgc::Heap::ResourceConstraints, cppgc::Heap::MarkingType, cppgc::Heap::SweepingType)
 
 ~HeapGrowingImpl ()
 
 HeapGrowingImpl (const HeapGrowingImpl &)=delete
 
HeapGrowingImploperator= (const HeapGrowingImpl &)=delete
 
void AllocatedObjectSizeIncreased (size_t) final
 
void AllocatedObjectSizeDecreased (size_t) final
 
void ResetAllocatedObjectSize (size_t) final
 
size_t limit_for_atomic_gc () const
 
size_t limit_for_incremental_gc () const
 
void DisableForTesting ()
 
- Public Member Functions inherited from cppgc::internal::StatsCollector::AllocationObserver
virtual void AllocatedSizeIncreased (size_t)
 
virtual void AllocatedSizeDecreased (size_t)
 

Private Member Functions

void ConfigureLimit (size_t allocated_object_size)
 

Private Attributes

GarbageCollectorcollector_
 
StatsCollectorstats_collector_
 
size_t initial_heap_size_ = 1 * kMB
 
size_t limit_for_atomic_gc_ = 0
 
size_t limit_for_incremental_gc_ = 0
 
SingleThreadedHandle gc_task_handle_
 
bool disabled_for_testing_ = false
 
const cppgc::Heap::MarkingType marking_support_
 
const cppgc::Heap::SweepingType sweeping_support_
 

Detailed Description

Definition at line 30 of file heap-growing.cc.

Constructor & Destructor Documentation

◆ HeapGrowingImpl() [1/2]

cppgc::internal::HeapGrowing::HeapGrowingImpl::HeapGrowingImpl ( GarbageCollector * collector,
StatsCollector * stats_collector,
cppgc::Heap::ResourceConstraints constraints,
cppgc::Heap::MarkingType marking_support,
cppgc::Heap::SweepingType sweeping_support )

Definition at line 69 of file heap-growing.cc.

Here is the call graph for this function:

◆ ~HeapGrowingImpl()

cppgc::internal::HeapGrowing::HeapGrowingImpl::~HeapGrowingImpl ( )

Definition at line 87 of file heap-growing.cc.

◆ HeapGrowingImpl() [2/2]

cppgc::internal::HeapGrowing::HeapGrowingImpl::HeapGrowingImpl ( const HeapGrowingImpl & )
delete

Member Function Documentation

◆ AllocatedObjectSizeDecreased()

void cppgc::internal::HeapGrowing::HeapGrowingImpl::AllocatedObjectSizeDecreased ( size_t )
inlinefinalvirtual

Reimplemented from cppgc::internal::StatsCollector::AllocationObserver.

Definition at line 43 of file heap-growing.cc.

◆ AllocatedObjectSizeIncreased()

void cppgc::internal::HeapGrowing::HeapGrowingImpl::AllocatedObjectSizeIncreased ( size_t )
finalvirtual

Reimplemented from cppgc::internal::StatsCollector::AllocationObserver.

Definition at line 91 of file heap-growing.cc.

◆ ConfigureLimit()

void cppgc::internal::HeapGrowing::HeapGrowingImpl::ConfigureLimit ( size_t allocated_object_size)
private

Definition at line 111 of file heap-growing.cc.

Here is the caller graph for this function:

◆ DisableForTesting()

void cppgc::internal::HeapGrowing::HeapGrowingImpl::DisableForTesting ( )

Definition at line 142 of file heap-growing.cc.

◆ limit_for_atomic_gc()

size_t cppgc::internal::HeapGrowing::HeapGrowingImpl::limit_for_atomic_gc ( ) const
inline

Definition at line 46 of file heap-growing.cc.

◆ limit_for_incremental_gc()

size_t cppgc::internal::HeapGrowing::HeapGrowingImpl::limit_for_incremental_gc ( ) const
inline

Definition at line 47 of file heap-growing.cc.

◆ operator=()

HeapGrowingImpl & cppgc::internal::HeapGrowing::HeapGrowingImpl::operator= ( const HeapGrowingImpl & )
delete

◆ ResetAllocatedObjectSize()

void cppgc::internal::HeapGrowing::HeapGrowingImpl::ResetAllocatedObjectSize ( size_t allocated_object_size)
finalvirtual

Reimplemented from cppgc::internal::StatsCollector::AllocationObserver.

Definition at line 106 of file heap-growing.cc.

Member Data Documentation

◆ collector_

GarbageCollector* cppgc::internal::HeapGrowing::HeapGrowingImpl::collector_
private

Definition at line 54 of file heap-growing.cc.

◆ disabled_for_testing_

bool cppgc::internal::HeapGrowing::HeapGrowingImpl::disabled_for_testing_ = false
private

Definition at line 63 of file heap-growing.cc.

◆ gc_task_handle_

SingleThreadedHandle cppgc::internal::HeapGrowing::HeapGrowingImpl::gc_task_handle_
private

Definition at line 61 of file heap-growing.cc.

◆ initial_heap_size_

size_t cppgc::internal::HeapGrowing::HeapGrowingImpl::initial_heap_size_ = 1 * kMB
private

Definition at line 57 of file heap-growing.cc.

◆ limit_for_atomic_gc_

size_t cppgc::internal::HeapGrowing::HeapGrowingImpl::limit_for_atomic_gc_ = 0
private

Definition at line 58 of file heap-growing.cc.

◆ limit_for_incremental_gc_

size_t cppgc::internal::HeapGrowing::HeapGrowingImpl::limit_for_incremental_gc_ = 0
private

Definition at line 59 of file heap-growing.cc.

◆ marking_support_

const cppgc::Heap::MarkingType cppgc::internal::HeapGrowing::HeapGrowingImpl::marking_support_
private

Definition at line 65 of file heap-growing.cc.

◆ stats_collector_

StatsCollector* cppgc::internal::HeapGrowing::HeapGrowingImpl::stats_collector_
private

Definition at line 55 of file heap-growing.cc.

◆ sweeping_support_

const cppgc::Heap::SweepingType cppgc::internal::HeapGrowing::HeapGrowingImpl::sweeping_support_
private

Definition at line 66 of file heap-growing.cc.


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