#include <heap-consistency.h>
Public Member Functions | |
| DisallowGarbageCollectionScope (HeapHandle &heap_handle) | |
| ~DisallowGarbageCollectionScope () | |
| DisallowGarbageCollectionScope (const DisallowGarbageCollectionScope &)=delete | |
| DisallowGarbageCollectionScope & | operator= (const DisallowGarbageCollectionScope &)=delete |
Static Public Member Functions | |
| static bool | IsGarbageCollectionAllowed (HeapHandle &heap_handle) |
| static void | Enter (HeapHandle &heap_handle) |
| static void | Leave (HeapHandle &heap_handle) |
Disallows garbage collection finalizations. Any garbage collection triggers result in a crash when in this scope.
Note that the garbage collector already covers paths that can lead to garbage collections, so user code does not require checking IsGarbageCollectionAllowed() before allocations.
|
explicit |
Constructs a scoped object that automatically enters and leaves a disallow garbage collection scope based on its lifetime.
| heap_handle | The corresponding heap. |
| cppgc::subtle::DisallowGarbageCollectionScope::~DisallowGarbageCollectionScope | ( | ) |
|
delete |
|
static |
Enters a disallow garbage collection scope. Must be paired with Leave(). Prefer a scope instance of DisallowGarbageCollectionScope.
| heap_handle | The corresponding heap. |
|
static |
|
static |
Leaves a disallow garbage collection scope. Must be paired with Enter(). Prefer a scope instance of DisallowGarbageCollectionScope.
| heap_handle | The corresponding heap. |
|
delete |