web-dev-qa-db-ja.com

検索ボックスを使用したりフォームを送信したりするときに、SSD上のFirefoxがフリーズするのを防ぐにはどうすればよいですか?

Firefoxは通常、ツールバーの検索ボックスから何かを検索するとき、フォームを送信するとき、または検索ボックスの履歴をクリアするときに、約1秒間フリーズします。オートコンプリート機能と関係があるのではないかと思います。 Windows 7のリソースモニターを使用すると、問題はファイルにあるようです。

C:\Users\<username>\AppData\Roaming\Mozilla\Firefox\Profiles\<profile>\formhistory.sqlite-journal

これはデータベースの書き込みをキャッシュする一時ファイルだと思います。次のスクリーンショットは、6つの異なる検索からの非常に長い応答時間と、ドライブCのキューの長さがスケールから外れていることを示しています。

enter image description here

私のFirefoxプロファイルはIntelX25-M G2SSDにあります。ハードディスクドライブに新しいプロファイルを作成しても、問題は発生しないようです。ただし、そもそもSSDに問題が存在する理由(SSDを購入した理由と矛盾する厄介な問題であり、他のアプリケーションでも発生する可能性があるため)とその防止方法を知りたいと思います。 Firefoxがセーフモードで起動され、最近のベータバージョンで起動された場合でも発生します。

更新:

  • Firefoxプロファイルデータベースをバキュームしても、この問題は解決しません。
  • Intel SSD Toolbox のSSDオプティマイザーも役に立ちません。
4
sblair

Sqliteデータベースをバキュームすることでメリットが得られる場合があります。このコマンドはそれを行う必要があります(Linuxの場合):

cd ~/.mozilla/firefox/dasda418.default
for i in *.sqlite
do
echo 'vacuum;' | sqlite3 $i
done

どこ dasda418.defaultは実際のFirefoxプロファイルディレクトリです。明らかに、Firefoxが実行されていないときにこれを行う必要があります。 Windowsの場合 コマンドは

for %i in (*.sqlite) do @echo VACUUM; | sqlite3 %i

これにより、データベースが圧縮され、データベースが小さくなり、問題が解決する可能性があります。

3
gorilla

データベースのバキュームについては、ゴリラに同意します。 OSに依存しない、より直接的な方法は、Firefoxのエラーコンソール([ツール]メニュー/ [エラーコンソール])を使用することです。

[コード]テキストボックスにこれを貼り付けます(1行です)。

Components.classes["@mozilla.org/browser/nav-history-service;1"].getService(Components.interfaces.nsPIPlacesDatabase).DBConnection.executeSimpleSQL("VACUUM");

[評価]を押します。データベースがVACUUMされている間、すべてのUIが数秒間フリーズします

enter image description here

mozillalinks

3
outsideblasts

ディスクキャッシュを無効にしようとしましたか? [ディスクのプロパティ]-> [ハードウェア]-> [プロパティ]-> [ポリシー]で、チェックを外しますデバイスで書き込みキャッシュを有効にする問題は私のことを思い出させます。これは、このチェックボックスに関連していると思います。 SSDディスクの場合でも、パフォーマンスが向上するはずなので、なぜ言わなければならないのかわかりません。しかし、チェックを外したので、Thunderbirdでの速度低下はもう発生していません。私はそれがあなたに同じことをすることを望みます。

1
VVV