18 #ifndef INCLUDED_SCRIPTRUNTIME 19 #define INCLUDED_SCRIPTRUNTIME 26 #define STACK_CHUNK_SIZE 8192 41 ScriptRuntime(shared_ptr<ScriptRuntime> parentRuntime,
int runtimeSize,
int heapGrowthBytesGCTrigger);
85 static void GCCallback(JSRuntime *rt, JSGCStatus status,
void *data);
88 #endif // INCLUDED_SCRIPTRUNTIME
void UnRegisterContext(JSContext *cx)
Definition: ScriptRuntime.cpp:149
void GCCallbackMember()
Definition: ScriptRuntime.cpp:98
ScriptRuntime(shared_ptr< ScriptRuntime > parentRuntime, int runtimeSize, int heapGrowthBytesGCTrigger)
Definition: ScriptRuntime.cpp:108
std::list< JSContext * > m_Contexts
Definition: ScriptRuntime.h:77
void RegisterContext(JSContext *cx)
Definition: ScriptRuntime.cpp:144
void PrepareContextsForIncrementalGC()
Definition: ScriptRuntime.cpp:265
double m_LastGCCheck
Definition: ScriptRuntime.h:83
void ShrinkingGC()
Definition: ScriptRuntime.cpp:257
int m_RuntimeSize
Definition: ScriptRuntime.h:80
void AddDeferredFinalizationObject(const std::shared_ptr< void > &obj)
Registers an object to be freed/finalized by the ScriptRuntime.
Definition: ScriptRuntime.cpp:103
void MaybeIncrementalGC(double delay)
MaybeIncrementalRuntimeGC tries to determine whether a runtime-wide garbage collection would free up ...
Definition: ScriptRuntime.cpp:155
static void GCCallback(JSRuntime *rt, JSGCStatus status, void *data)
Definition: ScriptRuntime.cpp:92
Abstraction around a SpiderMonkey JSRuntime.
Definition: ScriptRuntime.h:38
~ScriptRuntime()
Definition: ScriptRuntime.cpp:134
std::vector< std::shared_ptr< void > > m_FinalizationListObjectIdCache
Definition: ScriptRuntime.h:78
JSRuntime * m_rt
Definition: ScriptRuntime.h:70
int m_HeapGrowthBytesGCTrigger
Definition: ScriptRuntime.h:81
int m_LastGCBytes
Definition: ScriptRuntime.h:82