一旦内存使用量达到2,000 MB,我的电子应用就会崩溃。
我可以通过在主过程文件中添加以下代码来进行测试,这有意提高了内存使用率:
const all = [];
let big = [];
all.push(big);
for (let i = 0; i < 2000000000; i++) {
const newLen = big.push(Math.random());
if (newLen % 500000 === 0) {
big = [];
all.push(big);
console.log('all.length: ' + all.length);
console.log('heapTotal: ' + Math.round(process.memoryUsage().heapTotal / 1e6));
}
}
console.log(all.length);
我已经尝试了一切:
require('v8').setFlagsFromString('--max-old-space-size=4096');
app.commandLine.appendSwitch('js-flags', '--max-old-space-size=4096');
但是没有用...
在电子v3.0.0-beta.12和电子v2.0.9〜2.0.x上进行测试
如何增加Electron的内存限制,并在应用达到2GB或RAM使用率时不让我的应用崩溃?
答案 0 :(得分:-2)
至少> 8.0.3的电子中没有这种问题。
经过多个缓冲区测试,每个缓冲区约2GB(buffer.constants.MAX_LENGTH
)