Javascript-форум (https://javascript.ru/forum/)
-   Node.JS (https://javascript.ru/forum/node-js-io-js/)
-   -   как освободить память после require(JSON) ? (https://javascript.ru/forum/node-js-io-js/70621-kak-osvobodit-pamyat-posle-require-json.html)

dva2 20.09.2017 03:43

как освободить память после require(JSON) ?
 
Версия node 8.5.0
Есть 100 JSON файлов по 8 мб каждый.
Читаю их в ноде:

var files = fs.readdirSync('./path/');

files.forEach(filename => {

var data = require('./path/' + filename);
data = null;

});
после чтения всех файлов , программа занимает 1,2 Гб.
Вопрос: почему не освобождается память после data = null;
пробывал делать:
delete require.cache['./path/' + filename];
global.gc();
не помогло.

dva2 21.09.2017 04:41

Переделал на :
var jsonfile = require('jsonfile')
var fs = require('fs')

var files = fs.readdirSync('./path/');

files.forEach(filename => {
var data = jsonfile.readFileSync('./path/' + filename);
data = null;
});

Стало норм.


Часовой пояс GMT +3, время: 02:20.