Use 0 for disabling automatic GC

Similarly to other limits such as memory or stack limit, 0 means
unlimited.
This commit is contained in:
Saúl Ibarra Corretgé 2024-06-04 17:36:36 +02:00
parent c7bd41197a
commit 4093f9a318
2 changed files with 3 additions and 2 deletions

View file

@ -1341,7 +1341,7 @@ static void js_trigger_gc(JSRuntime *rt, size_t size)
force_gc = TRUE;
#else
force_gc = ((rt->malloc_state.malloc_size + size) >
rt->malloc_gc_threshold);
rt->malloc_gc_threshold - 1);
#endif
if (force_gc) {
#ifdef DUMP_GC
@ -1755,7 +1755,7 @@ void JS_SetDumpFlags(JSRuntime *rt, uint64_t flags)
rt->dump_flags = flags;
}
/* use -1 to disable automatic GC */
/* use 0 to disable automatic GC */
void JS_SetGCThreshold(JSRuntime *rt, size_t gc_threshold)
{
rt->malloc_gc_threshold = gc_threshold;

View file

@ -301,6 +301,7 @@ JS_EXTERN void JS_SetRuntimeInfo(JSRuntime *rt, const char *info);
/* use 0 to disable memory limit */
JS_EXTERN void JS_SetMemoryLimit(JSRuntime *rt, size_t limit);
JS_EXTERN void JS_SetDumpFlags(JSRuntime *rt, uint64_t flags);
/* use 0 to disable automatic GC */
JS_EXTERN void JS_SetGCThreshold(JSRuntime *rt, size_t gc_threshold);
/* use 0 to disable maximum stack size check */
JS_EXTERN void JS_SetMaxStackSize(JSRuntime *rt, size_t stack_size);