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

#include <safepoint.h>

Collaboration diagram for v8::internal::GlobalSafepoint:

Public Member Functions

 GlobalSafepoint (Isolate *isolate)
 
void AppendClient (Isolate *client)
 
void RemoveClient (Isolate *client)
 
template<typename Callback >
void IterateClientIsolates (Callback callback)
 
template<typename Callback >
void IterateSharedSpaceAndClientIsolates (Callback callback)
 
void AssertNoClientsOnTearDown ()
 
void AssertActive ()
 
V8_EXPORT_PRIVATE bool IsRequestedForTesting ()
 

Private Member Functions

void EnterGlobalSafepointScope (Isolate *initiator)
 
void LeaveGlobalSafepointScope (Isolate *initiator)
 

Private Attributes

Isolate *const shared_space_isolate_
 
base::RecursiveMutex clients_mutex_
 
Isolateclients_head_ = nullptr
 
int active_safepoint_scopes_ = 0
 

Friends

class GlobalSafepointScope
 
class Isolate
 

Detailed Description

Definition at line 182 of file safepoint.h.

Constructor & Destructor Documentation

◆ GlobalSafepoint()

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

Definition at line 324 of file safepoint.cc.

Member Function Documentation

◆ AppendClient()

void v8::internal::GlobalSafepoint::AppendClient ( Isolate * client)

Definition at line 327 of file safepoint.cc.

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

◆ AssertActive()

void v8::internal::GlobalSafepoint::AssertActive ( )
inline

Definition at line 207 of file safepoint.h.

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

◆ AssertNoClientsOnTearDown()

void v8::internal::GlobalSafepoint::AssertNoClientsOnTearDown ( )

Definition at line 364 of file safepoint.cc.

Here is the caller graph for this function:

◆ EnterGlobalSafepointScope()

void v8::internal::GlobalSafepoint::EnterGlobalSafepointScope ( Isolate * initiator)
private

Definition at line 368 of file safepoint.cc.

Here is the call graph for this function:

◆ IsRequestedForTesting()

bool v8::internal::GlobalSafepoint::IsRequestedForTesting ( )

Definition at line 430 of file safepoint.cc.

Here is the call graph for this function:

◆ IterateClientIsolates()

template<typename Callback >
void v8::internal::GlobalSafepoint::IterateClientIsolates ( Callback callback)
inline

Definition at line 190 of file safepoint.h.

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

◆ IterateSharedSpaceAndClientIsolates()

template<typename Callback >
void v8::internal::GlobalSafepoint::IterateSharedSpaceAndClientIsolates ( Callback callback)
inline

Definition at line 200 of file safepoint.h.

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

◆ LeaveGlobalSafepointScope()

void v8::internal::GlobalSafepoint::LeaveGlobalSafepointScope ( Isolate * initiator)
private

Definition at line 416 of file safepoint.cc.

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

◆ RemoveClient()

void v8::internal::GlobalSafepoint::RemoveClient ( Isolate * client)

Definition at line 344 of file safepoint.cc.

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

Friends And Related Symbol Documentation

◆ GlobalSafepointScope

friend class GlobalSafepointScope
friend

Definition at line 222 of file safepoint.h.

◆ Isolate

friend class Isolate
friend

Definition at line 223 of file safepoint.h.

Member Data Documentation

◆ active_safepoint_scopes_

int v8::internal::GlobalSafepoint::active_safepoint_scopes_ = 0
private

Definition at line 220 of file safepoint.h.

◆ clients_head_

Isolate* v8::internal::GlobalSafepoint::clients_head_ = nullptr
private

Definition at line 219 of file safepoint.h.

◆ clients_mutex_

base::RecursiveMutex v8::internal::GlobalSafepoint::clients_mutex_
private

Definition at line 218 of file safepoint.h.

◆ shared_space_isolate_

Isolate* const v8::internal::GlobalSafepoint::shared_space_isolate_
private

Definition at line 215 of file safepoint.h.


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