我正在使用 chrome(我的 mac 的开发版本)。
我正在查看页面加载的时间线,发现由于加载页面时发生了一些垃圾收集,延迟了 150 毫秒。
是黄线。
我很好奇是否有任何方法可以阻止它,延迟它,无论如何让页面加载得更快?
我正在使用 chrome(我的 mac 的开发版本)。
我正在查看页面加载的时间线,发现由于加载页面时发生了一些垃圾收集,延迟了 150 毫秒。
是黄线。
我很好奇是否有任何方法可以阻止它,延迟它,无论如何让页面加载得更快?
与某些评论相反,这不是 C++ 问题。
当 v8(chrome 中的 javascript 引擎)引擎检测到它应该开始释放代码中不再需要的对象使用的内存时,就会发生垃圾收集。您可以访问v8页面以获取有关垃圾收集器功能的更多信息。
您的代码早期进行垃圾收集的原因可能有很多,在这种情况下,我们需要查看您的代码。您是否有很多变量在页面加载时超出范围?
不要产生太多垃圾:查看您的 JavaScript 程序在加载期间分配内存的位置,看看您是否可以通过重用数据结构或将工作延迟到页面加载之后来消除垃圾收集。这使您可以“延迟”垃圾收集。