v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
v8::internal::MemoryMeasurement Class Reference

#include <memory-measurement.h>

Collaboration diagram for v8::internal::MemoryMeasurement:

Classes

struct  Request
 

Public Member Functions

 MemoryMeasurement (Isolate *isolate)
 
bool EnqueueRequest (std::unique_ptr< v8::MeasureMemoryDelegate > delegate, v8::MeasureMemoryExecution execution, const std::vector< Handle< NativeContext > > contexts)
 
std::vector< AddressStartProcessing ()
 
void FinishProcessing (const NativeContextStats &stats)
 

Static Public Member Functions

static std::unique_ptr< v8::MeasureMemoryDelegateDefaultDelegate (v8::Isolate *isolate, v8::Local< v8::Context > context, v8::Local< v8::Promise::Resolver > promise, v8::MeasureMemoryMode mode)
 

Private Member Functions

void ScheduleReportingTask ()
 
void ReportResults ()
 
void ScheduleGCTask (v8::MeasureMemoryExecution execution)
 
bool IsGCTaskPending (v8::MeasureMemoryExecution execution)
 
void SetGCTaskPending (v8::MeasureMemoryExecution execution)
 
void SetGCTaskDone (v8::MeasureMemoryExecution execution)
 
int NextGCTaskDelayInSeconds ()
 

Private Attributes

std::list< Requestreceived_
 
std::list< Requestprocessing_
 
std::list< Requestdone_
 
Isolateisolate_
 
std::shared_ptr< v8::TaskRunnertask_runner_
 
bool reporting_task_pending_ = false
 
bool delayed_gc_task_pending_ = false
 
bool eager_gc_task_pending_ = false
 
base::RandomNumberGenerator random_number_generator_
 

Static Private Attributes

static const int kGCTaskDelayInSeconds = 10
 

Detailed Description

Definition at line 25 of file memory-measurement.h.

Constructor & Destructor Documentation

◆ MemoryMeasurement()

v8::internal::MemoryMeasurement::MemoryMeasurement ( Isolate * isolate)
explicit

Definition at line 183 of file memory-measurement.cc.

Member Function Documentation

◆ DefaultDelegate()

std::unique_ptr< v8::MeasureMemoryDelegate > v8::internal::MemoryMeasurement::DefaultDelegate ( v8::Isolate * isolate,
v8::Local< v8::Context > context,
v8::Local< v8::Promise::Resolver > promise,
v8::MeasureMemoryMode mode )
static

Definition at line 368 of file memory-measurement.cc.

◆ EnqueueRequest()

bool v8::internal::MemoryMeasurement::EnqueueRequest ( std::unique_ptr< v8::MeasureMemoryDelegate > delegate,
v8::MeasureMemoryExecution execution,
const std::vector< Handle< NativeContext > > contexts )

Definition at line 192 of file memory-measurement.cc.

Here is the call graph for this function:

◆ FinishProcessing()

void v8::internal::MemoryMeasurement::FinishProcessing ( const NativeContextStats & stats)

Definition at line 234 of file memory-measurement.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsGCTaskPending()

bool v8::internal::MemoryMeasurement::IsGCTaskPending ( v8::MeasureMemoryExecution execution)
private

Definition at line 274 of file memory-measurement.cc.

Here is the caller graph for this function:

◆ NextGCTaskDelayInSeconds()

int v8::internal::MemoryMeasurement::NextGCTaskDelayInSeconds ( )
private

Definition at line 332 of file memory-measurement.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReportResults()

void v8::internal::MemoryMeasurement::ReportResults ( )
private

Definition at line 337 of file memory-measurement.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ScheduleGCTask()

void v8::internal::MemoryMeasurement::ScheduleGCTask ( v8::MeasureMemoryExecution execution)
private

Definition at line 302 of file memory-measurement.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ScheduleReportingTask()

void v8::internal::MemoryMeasurement::ScheduleReportingTask ( )
private

Definition at line 265 of file memory-measurement.cc.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ SetGCTaskDone()

void v8::internal::MemoryMeasurement::SetGCTaskDone ( v8::MeasureMemoryExecution execution)
private

Definition at line 292 of file memory-measurement.cc.

Here is the caller graph for this function:

◆ SetGCTaskPending()

void v8::internal::MemoryMeasurement::SetGCTaskPending ( v8::MeasureMemoryExecution execution)
private

Definition at line 282 of file memory-measurement.cc.

Here is the caller graph for this function:

◆ StartProcessing()

std::vector< Address > v8::internal::MemoryMeasurement::StartProcessing ( )

Definition at line 217 of file memory-measurement.cc.

Here is the caller graph for this function:

Member Data Documentation

◆ delayed_gc_task_pending_

bool v8::internal::MemoryMeasurement::delayed_gc_task_pending_ = false
private

Definition at line 64 of file memory-measurement.h.

◆ done_

std::list<Request> v8::internal::MemoryMeasurement::done_
private

Definition at line 60 of file memory-measurement.h.

◆ eager_gc_task_pending_

bool v8::internal::MemoryMeasurement::eager_gc_task_pending_ = false
private

Definition at line 65 of file memory-measurement.h.

◆ isolate_

Isolate* v8::internal::MemoryMeasurement::isolate_
private

Definition at line 61 of file memory-measurement.h.

◆ kGCTaskDelayInSeconds

const int v8::internal::MemoryMeasurement::kGCTaskDelayInSeconds = 10
staticprivate

Definition at line 40 of file memory-measurement.h.

◆ processing_

std::list<Request> v8::internal::MemoryMeasurement::processing_
private

Definition at line 59 of file memory-measurement.h.

◆ random_number_generator_

base::RandomNumberGenerator v8::internal::MemoryMeasurement::random_number_generator_
private

Definition at line 66 of file memory-measurement.h.

◆ received_

std::list<Request> v8::internal::MemoryMeasurement::received_
private

Definition at line 58 of file memory-measurement.h.

◆ reporting_task_pending_

bool v8::internal::MemoryMeasurement::reporting_task_pending_ = false
private

Definition at line 63 of file memory-measurement.h.

◆ task_runner_

std::shared_ptr<v8::TaskRunner> v8::internal::MemoryMeasurement::task_runner_
private

Definition at line 62 of file memory-measurement.h.


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