Задать вопрос
@BestJS

Почему не работает DELETE в NodeJs?

Вот код
var a, b, c, d, e, h;
b = new Array(10000000).join('lalalalalalalalalalalala');
d = new Array(10000000).join('lalalalalalalalalalalala');
c = new Array(10000000).join('lalalalalalalalalalalala');
e = new Array(10000000).join('lalalalalalalalalalalala');
h = new Array(10000000).join('lalalalalalalalalalalala');
a = new Array(10000000).join('lalalalalalalalalalalala');
aa = 5


delete a, b, c, d, e, h, aa;

console.log(aa)


Вот скриншот как он работает:
https://yadi.sk/i/Qx2U5ATzzDvYp

И даже так ничего из памяти не удаляется https://yadi.sk/i/w9Pz7wzvzDwqb

Почему ничего не удалилось из памяти?
  • Вопрос задан
  • 267 просмотров
Подписаться 1 Оценить Комментировать
Решения вопроса 2
vitali1995
@vitali1995
Насколько я знаю, Node.js использует сборщик мусора, который следит за оперативной памятью устройства и запускает очистку на определённом уровне переполнения. Попробуйте запустить бесконечный цикл, внутри которого объект создаётся, а затем зануляется.
Ответ написан
Комментировать
lazalu68
@lazalu68
Salmon
"Any property declared with var cannot be deleted from the global scope or from a function's scope." (c) MDN
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Если вы хотите экстрима, можете почитать про флаг --expose-gc.
Он поможет вам чистить память в нужное время, но не рекомендован для использования в продакшн.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы