是否可以通过javascript检查浏览器使用的内存量和清除当前使用的内存?

时间:2012-07-17 07:15:52

标签: javascript

我遇到了一个大问题,我在大型项目上工作,挂起浏览器自动javacript执行
“如何检测javascript使用的内存量并定期清除内存。这是可行的吗?”

2 个答案:

答案 0 :(得分:4)

你没有办法玩记忆。 Javascript在沙箱环境中运行,因此您无法以任何方式访问内存管理。垃圾收集器处理这个问题,你可以以某种方式让它做你想做的事,但它是随机的。不要指望它。

相反,对于您的问题,您可以使用Chrome Inspector的Profiler。

Profiler

它做什么?嗯...它描述了您所在的网页。您可以看到每个功能需要多长时间,尤其是:您的瓶颈在哪里

答案 1 :(得分:2)

特别是在Chrome中试用。

Chrome的V8有一个出色的世代垃圾收集器,其中发生了三种类型的轮询:有三个线程不断轮询这三种类型,我认为它们以10,50和200毫秒的间隔运行(我可能已经获得了数据)错误的,但它们基本相似,老一代的时间间隔也在增加。)

这是积极的,并确保内存使用量仍然很低。

尽管如此,如果您的代码在Chrome中占用内存,那么您可以确定问题与代码有关。可能是:

(a)您的代码实际上未经优化,或者是 (b)它确实在处理可能不适合客户端的非常大的数据(例如,包含大量小部件,dom节点等的过重页面)。

小心发布一些片段?