参考:html
JS内存泄漏排查方法(Chrome Profiles)chrome
目录:.net
一 Chrome任务管理器orm
二 Chrome 时间轴Performancehtm
三 Chrome Memory对象
这个貌似只能看一下js或者图片占用的内存大小。对于检查内存泄露,哪一块泄露来讲,帮助不大。blog
使用Chrome任务管理器,了解网页使用的内存量。
右上角菜单,选择工具,选择任务管理器。
对于默认不显示的选项。能够右键选择。好比查看Javascript使用的内存。
javascirpt使用的内存
Performance(时间轴)面板直观实时显示JS内存使用状况、节点数量、监听器数量等
开始录制前先点击垃圾回收-->点击开始录制-->点击垃圾回收-->点击结束录制
这个功能查找内存泄露比较重要
Summary 总览视图:按构造函数分组。用于捕捉对象及其使用的内存。对于定位DOM内存泄露特别有用
Comparison 对比视图:对比两个快照。用于对比不一样操做以后的堆快照,查看内存的释放及引用计数,来分析内存是否泄露及其缘由
Statistics 统计视图:总览堆的统计信息
其中Comparison对比视图,这个用于检查内存泄露比较有用。
1. 点击开始录制(拍照),拍下内存快照
2. 在可疑的内存泄露场景来回切换,好比你以为退出游戏时,游戏场景有泄露,则屡次进入和退出游戏,再次拍照
3. 而后对比两张快照,发现内存泄露的来源
Constructor:构造函数,节点下的对象都是由改构造函数建立而来。 Distance:与根节点的距离。 Objects Count:对象个数及百分占比。 Shallow size:对象的直接内存总数,直接内存是指对象自身占用的内存大小。 Retained size:对象的最大保留内存,保留内存是指对象被删除后能够释放的那部份内存。 点击展开构造函数,能够看到全部构造函数相关的对象实例,@后面的数字是该对象实例的惟一标识符。