![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <array-buffer-sweeper.h>
Classes | |
class | SweepingState |
Public Types | |
enum class | SweepingType { kYoung , kFull } |
enum class | TreatAllYoungAsPromoted { kNo , kYes } |
Public Member Functions | |
ArrayBufferSweeper (Heap *heap) | |
~ArrayBufferSweeper () | |
void | RequestSweep (SweepingType sweeping_type, TreatAllYoungAsPromoted treat_all_young_as_promoted) |
void | EnsureFinished () |
void | Append (ArrayBufferExtension *extension) |
void | Resize (ArrayBufferExtension *extension, int64_t delta) |
void | Detach (ArrayBufferExtension *extension) |
const ArrayBufferList & | young () const |
const ArrayBufferList & | old () const |
size_t | YoungBytes () const |
size_t | OldBytes () const |
bool | sweeping_in_progress () const |
uint64_t | GetTraceIdForFlowEvent (GCTracer::Scope::ScopeId scope_id) const |
Private Member Functions | |
void | FinishIfDone () |
void | Finish () |
void | UpdateApproximateBytes (int64_t delta, ArrayBufferExtension::Age age) |
void | IncrementExternalMemoryCounters (size_t bytes) |
void | DecrementExternalMemoryCounters (size_t bytes) |
void | Prepare (SweepingType type, TreatAllYoungAsPromoted treat_all_young_as_promoted, uint64_t trace_id) |
void | Finalize () |
void | ReleaseAll (ArrayBufferList *extension) |
Static Private Member Functions | |
static void | FinalizeAndDelete (ArrayBufferExtension *extension) |
Private Attributes | |
Heap *const | heap_ |
std::unique_ptr< SweepingState > | state_ |
ArrayBufferList | young_ {ArrayBufferList::Age::kYoung} |
ArrayBufferList | old_ {ArrayBufferList::Age::kOld} |
int64_t | young_bytes_adjustment_while_sweeping_ {0} |
int64_t | old_bytes_adjustment_while_sweeping_ {0} |
V8_NO_UNIQUE_ADDRESS ExternalMemoryAccounter | external_memory_accounter_ |
Definition at line 54 of file array-buffer-sweeper.h.
|
strong |
Enumerator | |
---|---|
kYoung | |
kFull |
Definition at line 56 of file array-buffer-sweeper.h.
|
strong |
Enumerator | |
---|---|
kNo | |
kYes |
Definition at line 57 of file array-buffer-sweeper.h.
|
explicit |
Definition at line 251 of file array-buffer-sweeper.cc.
v8::internal::ArrayBufferSweeper::~ArrayBufferSweeper | ( | ) |
void v8::internal::ArrayBufferSweeper::Append | ( | ArrayBufferExtension * | extension | ) |
|
private |
Definition at line 430 of file array-buffer-sweeper.cc.
void v8::internal::ArrayBufferSweeper::Detach | ( | ArrayBufferExtension * | extension | ) |
void v8::internal::ArrayBufferSweeper::EnsureFinished | ( | ) |
Definition at line 259 of file array-buffer-sweeper.cc.
|
private |
Definition at line 334 of file array-buffer-sweeper.cc.
|
staticprivate |
|
private |
Definition at line 265 of file array-buffer-sweeper.cc.
|
private |
Definition at line 273 of file array-buffer-sweeper.cc.
uint64_t v8::internal::ArrayBufferSweeper::GetTraceIdForFlowEvent | ( | GCTracer::Scope::ScopeId | scope_id | ) | const |
Definition at line 565 of file array-buffer-sweeper.cc.
|
private |
Definition at line 422 of file array-buffer-sweeper.cc.
|
inline |
|
inline |
Definition at line 80 of file array-buffer-sweeper.h.
|
private |
Definition at line 310 of file array-buffer-sweeper.cc.
|
private |
Definition at line 342 of file array-buffer-sweeper.cc.
void v8::internal::ArrayBufferSweeper::RequestSweep | ( | SweepingType | sweeping_type, |
TreatAllYoungAsPromoted | treat_all_young_as_promoted ) |
Definition at line 282 of file array-buffer-sweeper.cc.
void v8::internal::ArrayBufferSweeper::Resize | ( | ArrayBufferExtension * | extension, |
int64_t | delta ) |
|
inline |
|
private |
Definition at line 401 of file array-buffer-sweeper.cc.
|
inline |
|
inline |
Definition at line 78 of file array-buffer-sweeper.h.
|
private |
Definition at line 118 of file array-buffer-sweeper.h.
|
private |
Definition at line 109 of file array-buffer-sweeper.h.
|
private |
Definition at line 112 of file array-buffer-sweeper.h.
|
private |
Definition at line 117 of file array-buffer-sweeper.h.
|
private |
Definition at line 110 of file array-buffer-sweeper.h.
|
private |
Definition at line 111 of file array-buffer-sweeper.h.
|
private |
Definition at line 116 of file array-buffer-sweeper.h.