Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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
Javascript 这是js堆图吗?我怎样才能修好它?_Javascript_Google Chrome_Google Chrome Devtools - Fatal编程技术网

Javascript 这是js堆图吗?我怎样才能修好它?

Javascript 这是js堆图吗?我怎样才能修好它?,javascript,google-chrome,google-chrome-devtools,Javascript,Google Chrome,Google Chrome Devtools,我已经记录了angular 4.4应用程序的性能,我认为Chrome开发工具给我的关于js堆的反馈可能令人担忧,但老实说,我在这个问题上缺乏 我不明白~20000ms处的直线下降、之后不久的直线下降和~60000ms处的另一个下降:这是由于什么原因?这些行为是正常的还是意味着某些事情应该得到纠正 倾斜意味着页面正在JS堆中分配内存。这是正常的 删除意味着浏览器释放了JS堆中不再需要的内存。这称为垃圾收集。这也很正常。这没什么可怕的 通常,如果在每次垃圾收集事件之后看到内存总量逐渐增加,那么这就是

我已经记录了angular 4.4应用程序的性能,我认为Chrome开发工具给我的关于js堆的反馈可能令人担忧,但老实说,我在这个问题上缺乏

我不明白~20000ms处的直线下降、之后不久的直线下降和~60000ms处的另一个下降:这是由于什么原因?这些行为是正常的还是意味着某些事情应该得到纠正


倾斜意味着页面正在JS堆中分配内存。这是正常的

删除意味着浏览器释放了JS堆中不再需要的内存。这称为垃圾收集。这也很正常。这没什么可怕的

通常,如果在每次垃圾收集事件之后看到内存总量逐渐增加,那么这就是内存泄漏的警告信号。内存泄漏模式通常如下所示:

从图中可以看出,如果让页面运行足够长的时间,最终会耗尽计算机的所有内存,导致计算机运行缓慢或崩溃


有关分析内存使用情况的更多技术,请参阅。

什么特别让您担心?在~20000ms时的下降,不久之后的街灯线,以及随后的增加让我担心。你知道这是因为什么吗?从OP提供的图像来看,似乎是基于计时器调用了一个过程?当程序被调用时,进程开始。仍然不确定为什么你自己的代码会让你感到不安?您应该比图像的查看者更清楚代码中发生了什么。请参阅,在的范围内更深入地了解stop the world和V8事件循环…因此,实际上不可能判断这是否是一个问题。下降仅仅意味着分配了一定内存量的任务完成,并且释放了该内存。如果在任务结束前需要所有的内存,这是非常好的,但它也可能表明您有一个在整个时间内保留某些对象/内存的闭包,即使您不再使用它。非常感谢,这非常清晰方便。标记