我有有内存泄漏的地方一个Web应用程序,我无法检测到它。 我已经尝试过Chrome开发人员工具通常的伟大工程,但我无法追查其负责的代码行。 该浏览器的工具只是给我太多的信息,我不能在内存中的对象涉及到我的代码。
是否有任何其他工具可能会有所帮助?
我有有内存泄漏的地方一个Web应用程序,我无法检测到它。 我已经尝试过Chrome开发人员工具通常的伟大工程,但我无法追查其负责的代码行。 该浏览器的工具只是给我太多的信息,我不能在内存中的对象涉及到我的代码。
是否有任何其他工具可能会有所帮助?
更新:允许使用记录堆分配配置文件类型。
见截屏的Javascript内存泄漏检测器(Chrome DevTools)
是:你可以用在下一个场景进行细化内存泄漏。
之后,你会看到对象的一组泄露的对象。 您可以选择一个对象,并期待在保持器的列表中对象的护树
使用元素的innerHTML和outerHTML值在独立式DOM树的视堆探查到内存中的对象映射到你的代码和跟踪内存泄漏。
jQuery的Ajax请求是在我的应用程序的最大元凶。 找到所有你的Ajax jQuery函数:阿贾克斯(),获得()。员额()和内容制定者:html的()的.text()。
转到开发工具网络选项卡,刷新当前页面10到20倍。 如果你看到的东西堆放过于频繁,或者调用没有完成,你有内存泄漏。
下面是最近的内存泄漏,我能够与jQuery.load解决()...
if(!jQuery.terms_html) $('#tc_container').load(STATIC_DOMAIN + '/terms.html', function() { jQuery.terms_html = $('#tc_container').html() }) else $('#tc_container').html(jQuery.terms_html)
另外,jQuery的在写这个的时候最新版本是3.3.1。 拥有安装了最新版本是开始,如果可能最好的方式。 https://github.com/jquery/jquery/releases