Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Chrome';s任务管理器显示Javascript导致的内存泄漏?_Javascript_Google Chrome_Memory Leaks_Google Chrome Devtools_Taskmanager - Fatal编程技术网

Chrome';s任务管理器显示Javascript导致的内存泄漏?

Chrome';s任务管理器显示Javascript导致的内存泄漏?,javascript,google-chrome,memory-leaks,google-chrome-devtools,taskmanager,Javascript,Google Chrome,Memory Leaks,Google Chrome Devtools,Taskmanager,我有一个web应用程序,它可以在滚动窗口时更新DOM不透明度。性能与您期望的差不多,但令人惊讶的是Chrome的任务管理器窗口(快捷方式:Shift+Esc)。当我滚动窗口时,内存值会无限期地上升,并且永远不会回到其原始水平。Chrome开发工具中的时间线和配置文件面板并不反映这种内存增长 我做了。确保在滚动结果窗格时打开任务管理器以查看选项卡的内存 任务管理器内存列是否受到JavaScript内存泄漏的影响,或者这超出了我的控制范围(除了不执行滚动不透明度效果) 是的,选项卡的内存会受到内存泄

我有一个web应用程序,它可以在滚动窗口时更新DOM不透明度。性能与您期望的差不多,但令人惊讶的是Chrome的任务管理器窗口(快捷方式:
Shift+Esc
)。当我滚动窗口时,内存值会无限期地上升,并且永远不会回到其原始水平。Chrome开发工具中的时间线和配置文件面板并不反映这种内存增长

我做了。确保在滚动结果窗格时打开任务管理器以查看选项卡的内存

任务管理器内存列是否受到JavaScript内存泄漏的影响,或者这超出了我的控制范围(除了不执行滚动不透明度效果)


是的,选项卡的内存会受到内存泄漏的影响,但您可能没有内存泄漏。每次滚动时,浏览器都会绘制新的平铺,直到需要时才会删除它们。你在数百(数千)兆字节之前就这么做了吗?而且,我无法在Chrome36上重现这种行为。你可以使用ChromeDev工具上的配置文件检查内存。我已经检查了你给的页面,从标签堆中没有内存泄漏。有两件事你应该考虑:首先,浏览器将触发大量的“滚动”事件。您的函数可能只需要每隔30毫秒左右响应一次。其次,在
requestAnimationFrame()
回调中进行CSS更新。这些不会对内存消耗造成太大的改变,但会对CPU更友好。