クロムで requestAnimationFrame を使用して、ラファエルで単純なビューボックス アニメーションを実行しています。すべてのスクリプティングおよびレンダリング タスクが完了していることに気付きましたが、まだ 30 ~ 60 ミリ秒の「デッド スペース」があり、ブラウザが何もしていないように見えます。これについての洞察はありますか?
2 に答える
私は同じ答えを探してこの質問を続けましたが、誰も回答を提供していないようです。
Clear and Light Gray Frame に関する Chrome DevTools のドキュメントによると、空白のスペースはブラウザがアイドル状態だった時間です。
なぜそれはアイドルですか?
短いバージョンでは、中空フレームは次の 2 つのいずれかを意味します。Chrome 開発チームが DevTools で表示するのを忘れていた他のことを行うために JavaScript のメイン スレッドが忙しかったか、GPU でボトルネックが発生しました。
違いを見分けるには、DevTools の設定内で [Timeline: Show CPU Activity on the Ruler] を有効にします (右下隅の歯車)。
次のようなもので終了します。
「レコード」行にある小さな濃い灰色のブロックが見えますか? レンダラー スレッドがビジー状態の場合、これらは暗くなります。この投稿のためにヤンクしたスクリーンショットのように、レンダラー スレッドがほとんどアイドル状態の場合 (たとえば、暗いブロックがない場合)、GPU バウンドの非常に良いシグナルです。
Chrome エンジニアの Nat Duca による完全な説明は次のとおりです。