Firefoxを起動するとしばらく問題はありませんが、数日後にCPUスパイクが発生し始めます。スパイク中に、Firefoxがフリーズして停止します。スパイクは7〜10秒ごとに発生し、各スパイクは2〜3秒続きます。スパイクが発生したときに入力すると、スパイクの後にのみ文字が出力されます。この問題はFlashが原因であると当初は思っていたため、無効にしましたが、まだ問題が発生しています。
また、Firefoxのメモリ使用量は数日後に600 MB以上に増加します。
Firefoxを起動するとしばらく問題はありませんが、数日後にCPUスパイクが発生し始めます。スパイク中に、Firefoxがフリーズして停止します。スパイクは7〜10秒ごとに発生し、各スパイクは2〜3秒続きます。スパイクが発生したときに入力すると、スパイクの後にのみ文字が出力されます。この問題はFlashが原因であると当初は思っていたため、無効にしましたが、まだ問題が発生しています。
また、Firefoxのメモリ使用量は数日後に600 MB以上に増加します。
回答:
ガベージコレクターかサイクルコレクターのどちらかだと思います。
にabout:config
変更javascript.options.mem.log
してtrue
。これで、GCとCCに関する通知がエラーコンソール(Crtl+ Shift+ J)で利用可能になるはずです。それらのタイミングと継続時間の一致がフリーズしている場合、これが問題です。
この問題が発生したとき、Firefoxプロファイルを吹き飛ばし、新しいプロファイルを最初から作成して修正しました。Firefoxのプロファイルは、時間の経過とともに多くのクラッドを収集する傾向があります。
これでも完璧な解決策ではありません。Firefox(100以上)または多数の拡張機能で多数のタブを開き、Firefoxを何日も実行したままにすると、必然的に速度が低下します。たまにFirefoxを再起動する必要があります。
あなたが私のようなもので、大量のタブのコレクションを収集する傾向がある場合、ある時点で対処する必要がある別のトリックはbrowser.sessionstore.max_concurrent_tabs
、0 に設定することです。これにより、Firefoxが起動時にセッションのすべてのタブをロードしなくなります。それらに切り替えると、代わりにロードされます。私はこれに加えて、Firefoxを時々再起動することで、非常に多くのタブを使用する負荷を大幅に軽減しています。
で、大きな数about:config
に設定browser.sessionstore.interval
します(10,000
またはである必要があり15,000
ます。約に設定します600,000
)。
基本的に、これはFirefoxが「保存されたセッション」を更新する時間間隔のミリ秒数です。多くのタブが開いている場合、または長い閲覧履歴がある場合(または、両方の場合によくあることですが、両方の場合)、sessionstore.js
10秒または15秒ごとに途方もない量のデータがファイルに書き込まれ、Flashビデオが発生する可能性があります。短時間だけフリーズするか、コンピュータ全体を数分ごとにフリーズします。
この値を大きな値に設定すると、Firefoxがクラッシュした場合、復元しようとすると、最後の数分の閲覧履歴が失われるという欠点があります。それは私の意見では支払うべき小さな価格です。
CPUスパイクの頻度が大幅に減少するはずです。
それ自体はメモリリークを修正しません。ただし、「選択するまでタブを読み込まない」を有効にすると、再起動後にタブをクリックするまでタブは読み込まれません。これにより、メモリが節約されます。
また、CCleanerを使用してFirefoxの「セッション」をクリーンアップすることも少し役立ちました。セッション回復情報が削除されるため、開いているすべてのタブを最初にバックアップします。CCleanerを実行する前は、私のsessionstore.jsファイルは約800 KBでしたが、その後は約6 KBになりました。
セッションストアの詳細については、「解決済み:Firefoxが10秒ごとにフリーズする、スクロールはびくびくする」を参照してください。
Flashblockをアンインストールすると、FirefoxのCPU使用率が高くなる問題が修正されました。おそらく、FlashblockとAdblock Plusまたは他の拡張機能がうまく機能しないのでしょうか。
人生は短すぎてFirefoxをいじり回すことはできません。ブックマークをエクスポートしてFirefoxをアンインストールし、マシン上のすべてのFirefoxフォルダーを削除してから、Firefoxを最初から再インストールし、ブックマークを復元しました。今では、まったく新しいインストールでGoogle Chromeよりも高速に実行されます。
言うのはとても難しいです。それを引き起こすのは単なる一般的な使用ですか、それとも特定のサイトにアクセスしていますか?(jQueryのメモリリークが原因で、ブラウザが時間の経過とともにメモリを獲得するという問題がありました)。
Microsoft OSを使用している場合、MicrosoftのProcess Monitorツールを使用してみてください。大量のメッセージを吐き出しますが、それらを「フリーズ」が発生した間隔に絞り込み、おそらくどのプロセスがブロッキングを実行しているかを確認できます。