Ответ 1
Насколько я знаю, вы не можете вручную остановить сборщик мусора v8, единственное, что вы можете сделать, это запустить gc-процесс вручную global.gc()
, но не остановить процесс v8.
Есть ли способ явно отключить выполнение GC (по крайней мере, наиболее трудоемких, например, прерываний GC в старом пространстве) в течение указанного периода времени, при выполнении некоторого кода, чувствительного к задержкам? Что-то вроде этого:
disableGc();
runCodeWithoutDelays();
enableGc();
Возможно, с использованием некоторых опций node или собственных модулей? Или я могу написать свой собственный модуль, есть ли в нем API для V8?
Насколько я знаю, вы не можете вручную остановить сборщик мусора v8, единственное, что вы можете сделать, это запустить gc-процесс вручную global.gc()
, но не остановить процесс v8.
У другого человека был такой же вопрос и опубликовал вопрос о GitHub здесь: https://github.com/nodejs/help/issues/462
Ответ: вы не можете отключить GC в Node, но вы можете, по крайней мере, изменить параметры памяти, чтобы использовать максимальное доступное пространство и задержку GC, используя --max_old_space_size, --max-semi-space- размер.
Приведен пример в контексте.