前端内存管理

减少浏览器的负担
内存过大会让浏览器压力过大,导致浏览器卡顿
Node端
内存如果不够,服务就会中断,而nodejs开启的服务,如果不管理内存,就会中断
V8到底有多大
1,64位下是1.4G
一手资源:666java.com
2,32位下700MB
3,但是根据浏览器不同,有些许扩容。Node情况下会有一些C++内存扩容
在这里插入图片描述

新生代

在这里插入图片描述

短时间存活的新变量会存在新生代种中,新生代的内存量极小,64位
下大概是32MB

新生代的回收算法,可以检署为复制-清空,
把存活者的变量复制到to空间,然后把from
空间清空,然后对调from和to。这样可以提
升回收速度,典型的牺牲空间换时间

老生代

在这里插入图片描述

生存时间比较长的变量,会转存到老生代,老生代占据了几乎所有内存。64位下大概是1400MB
老生代回收分为三步:
1,标记已死变量
2,清楚已死变量3,整理磁盘
新生代和老生代怎么转换
1,新生代发现本次复制后,会占用超过百分之25的to空间。
2,这个对象已经经历过一次回收

如何查看浏览器内存使用情况

浏览器端

window.perforrance.memory

Node端

process.memoryUsage()

在这里插入图片描述
优化的建议
1,尽量不要定义全局,定义了及时手动释放
2,注意闭包

posted @ 2022-07-19 08:48  我是小杨  阅读(94)  评论(0)    收藏  举报