Index: src/heap/heap.h |
diff --git a/src/heap/heap.h b/src/heap/heap.h |
index b8d9166cb7e3d342e6d4e886d70bb74daf2d3679..65f79ecc5c2d31f4668bb451ca92e455141ddb72 100644 |
--- a/src/heap/heap.h |
+++ b/src/heap/heap.h |
@@ -14,6 +14,7 @@ |
#include "src/allocation.h" |
#include "src/assert-scope.h" |
#include "src/base/atomic-utils.h" |
+#include "src/debug/debug-interface.h" |
#include "src/globals.h" |
#include "src/heap-symbols.h" |
#include "src/list.h" |
@@ -846,6 +847,9 @@ class Heap { |
bool is_isolate_locked); |
void CheckMemoryPressure(); |
+ void SetOutOfMemoryCallback(v8::debug::OutOfMemoryCallback callback, |
+ void* data); |
+ |
double MonotonicallyIncreasingTimeInMs(); |
void RecordStats(HeapStats* stats, bool take_snapshot = false); |
@@ -1759,6 +1763,8 @@ class Heap { |
void CollectGarbageOnMemoryPressure(); |
+ void InvokeOutOfMemoryCallback(); |
+ |
// Attempt to over-approximate the weak closure by marking object groups and |
// implicit references from global handles, but don't atomically complete |
// marking. If we continue to mark incrementally, we might have marked |
@@ -2169,6 +2175,9 @@ class Heap { |
// and reset by a mark-compact garbage collection. |
base::AtomicValue<MemoryPressureLevel> memory_pressure_level_; |
+ v8::debug::OutOfMemoryCallback out_of_memory_callback_; |
+ void* out_of_memory_callback_data_; |
+ |
// For keeping track of context disposals. |
int contexts_disposed_; |