Firefoxでバックグラウンドタブを積極的に調整するための正しい設定は何ですか?
数年前、私は この投稿 背景(および前景)タブを調整するためのFirefoxのさまざまなabout:config
設定について説明しましたが、それらの意味を理解できませんでした。たとえば、これらの各オプションの単位が何であるか(秒、ミリ秒?)、値を増やすとタブがより多く抑制されるか、より少なく抑制されるかは不明です。
dom.min_background_timeout_value
dom.timeout.background_budget_regeneration_rate
dom.timeout.background_throttling_max_budget
dom.timeout.budget_throttling_max_delay
dom.timeout.foreground_budget_regeneration_rate
dom.timeout.foreground_throttling_max_budget
dom.timeout.throttling_delay
具体的には、非常に積極的なスロットリングポリシーを採用しましょう:バックグラウンドタブに30分ごとに1ミリ秒の実行時間しか与えられないようにしたいです。欲しいこのポリシーは、タブがフォアグラウンドになくなってから1ms後に有効になります。つまり、タブをバックグラウンドに置いた後30分間、タブのCPU使用率が0.00%を超えないようにする必要があります。
これらのFirefox設定の値は、この積極的なスロットル動作を実現するためにどのようにすべきですか?
タブをバックグラウンドに置いた後、30分間、タブのCPU使用率が0.00%を超えないようにする必要があります。
これは、about:config
に次のエントリを設定することで実現できます。
dom.min_background_timeout_value 1,800,000
dom.min_tracking_background_timeout_value 1,800,000
dom.timeout.throttling_delay 1
window.setTimeoutのmozillaドキュメントの「非アクティブなタブ」セクション によると:
バックグラウンドタブからの負荷(および関連するバッテリー使用量)を減らすために、タイムアウトは、非アクティブなタブで1秒に1回(1,000ミリ秒)以下の頻度で起動するように調整されます。
Firefoxは、バージョン5以降、この動作を実装しています(バグ633421を参照してください。1000msの定数は、dom.min_background_timeout_valueプリファレンスを介して調整できます)。 Chromeはバージョン11(crbug.com/66078)以降この動作を実装しています。
Firefox for Androidは、Firefox 14のバグ736602以降、バックグラウンドタブに15分のタイムアウト値を使用します。バックグラウンドタブも完全にアンロードできます。
したがって、Firefoxのdom.min_background_timeout_value
のデフォルト値は15分です(単位はmsであるため、実際には900,000
に設定されます)。これは、バッテリーを節約し、RAM/CPUリソースが不足しているデバイスにとって意味があります。その値を2倍にして30分を達成する= 1,800,000
。
about:config
には、トラッキングスクリプト(dom.min_tracking_background_timeout_value
)を調整するための個別のエントリがあり、これも1,800,000
msの同じ値に増やす必要があることに注意してください。
デフォルトでは、タブがすぐにフォアグラウンドにない場合、タブは調整されません。そのため、dom.timeout.throttling_delay
を1
msに設定して、タブがフォアグラウンドになくなったらすぐにスロットルを開始します。
他のabout:config
エントリのほとんどが何をするのかわかりません。 budget
のものは特に混乱を招き、さらなる説明を歓迎します。