6

在此处输入图像描述

我正在使用 chrome 中的 requestAnimationFrame 在 raphael 中运行一个简单的视图框动画。我注意到所有脚本和渲染任务都已完成,但我仍然看到 30 到 60 毫秒之间的“死区”,看起来浏览器坐在那里无所事事。对此有任何见解吗?

4

2 回答 2

3

我继续这个问题寻找相同的答案,但似乎没有人提供回应,这就是我发现的。

根据有关 Clear and Light Gray Frame 的 Chrome DevTools 文档,空白区域是您的浏览器空闲的时间。

为什么闲置?

简短的版本是空心框架意味着两件事之一:您的 javascript 主线程正忙于做 Chrome 开发团队忘记在 DevTools 中显示的其他事情,或者您的 GPU 遇到瓶颈。

为了区分,你可以在 DevTools 的设置中启用“时间线:在标尺上显示 CPU 活动”(你知道,右下角的齿轮)。

在此处输入图像描述

你会以这样的方式结束:

在此处输入图像描述

看到“记录”行上的深灰色小块了吗?当渲染器线程忙时,这些是黑暗的。如果渲染器线程大部分是空闲的,例如没有暗块,就像我为这篇文章截取的屏幕截图一样,这是一个很好的信号,表明您受 GPU 限制。

于 2013-12-27T13:57:37.997 回答
0

这是 Chrome 工程师 Nat Duca 的完整解释。

https://plus.google.com/+NatDuca/posts/BvMgvdnBvaQ

于 2015-03-12T18:29:21.397 回答