function monitorMemory() {
const memory = window.performance.memory;
const totalLimit = memory.jsHeapSizeLimit / 1024 / 1024;
const total = memory.totalJSHeapSize / 1024 / 1024;
const used = memory.usedJSHeapSize / 1024 / 1024;
console.log(`totalLimit memory: ${totalLimit} MB`);
console.log(`Total memory: ${total} MB`);
console.log(`Used memory: ${used} MB`);
}
setInterval(monitorMemory, 2000);
jsHeapSizeLimit表示的是当前上下文内可用堆的最大体积,以字节计算。
totalJSHeapSize表示的是已分配的堆体积,以字节计算。
usedJSHeapSize表示的是当前正在使用的堆体积,以字节计算。
通常情况下,usedJSHeapSize不能大于totalJSHeapSize,否则可能会出现内存泄漏。