11

最近、UbuntuHardyHeronのFirefox3で問題が発生しています。

リンクをクリックすると、しばらくハングします。Firefox 3のバグなのか、クライアント側のJavaScriptを実行しすぎているページなのかはわかりませんが、少しデバッグしてみたいと思います。

それで、私の質問は、「Firefox 3のために、ある種のプロセスエクスプローラー、またはタスクマネージャーのようなものを用意する方法はありますか?」です。

そのページ(またはCPU /メモリの使用を引き起こしているページ内のすべて)のJavaScriptを介して、どのタブがプロセッサの何パーセントを使用しているかを確認できるようにしたいと思います。

これを行うプラグイン、または同様のプラグインを知っている人はいますか?他の誰かがこの種の検査を別の方法で行ったことがありますか?

FireBugについては知っていますが、どのタブが多くのリソースを使用しているかを特定するためにFireBugをどのように使用するか想像できません。

何か提案や洞察はありますか?

4

5 に答える 5

9

それはおそらく素晴らしい firefox3 fsync の "バグ"であり、失敗の山です。

要約すれば

  • Firefox3 はブックマークと履歴を SQLite データベースに保存します
  • ページをロードするたびに、このデータベースに数回書き込みます
  • SQLite は、ユーザーがブックマークを失わないように細心の注意を払っているため、書き込むたびに、データベース ファイルをディスクにフラッシュし、完全に書き込まれたことを確認するようにカーネルに指示します。
  • Linux の多くのバリアントは、そのようにフラッシュするように指示されると、すべてのファイルをフラッシュします。バックグラウンド タスクで何らかの種類のディスク集中型処理を実行している場合、これには 1 分以上かかる場合があります。
  • カーネルは、このフラッシュが発生している間、Firefox を待機させます。これにより、UI がロックされます。
于 2008-08-11T06:35:58.160 に答える
3

それで、私の質問は、ある種のプロセス エクスプローラー、または Firefox 3 用のタスク マネージャーのようなものを使用する方法はありますか?

Firefox の構築方法により、現時点ではこれを行うことはできません。しかし、新しい Internet Explorer 8 Beta 2 と発表されたばかりの Google Chrome ブラウザーはその方向に向かっているので、Firefox もその方向に向かっていると思います。

これは、 Mozilla の John Resig と jQuery の名声による投稿 ( Google Chrome Process Manager ) です。

于 2008-09-02T08:37:30.710 に答える
1

Firefox用の「プロセスエクスプローラー」のようなツールはありません。ただし、プロファイリングモードのhttps://developer.mozilla.org/en-US/docs/Archive/Mozilla/Venkmanがあります。これを使用して、Chrome(非コンテンツ、つまりWebページではない)に費やされた時間を確認できます。 )スクリプト。

私が読んだことから、DTraceはこの種のことにも役立つかもしれませんが、カスタムビルドを作成し、場合によってはソースにプローブを追加する必要があります。まだ自分で遊んでいません。

于 2008-08-11T15:42:35.903 に答える
1

FF の 3.0 より前のバージョンに影響を与えた fsync 関連の問題のすべてを説明する、これに関する徹底的な議論があります。一般的に、私はそれ以来この動作を見ていません。実際、システムが IO 集中型のタスクを実行していなければ、まったく問題にはならないはずです。Firebug/Venkman は素晴らしいデバッガーを作成しますが、他の誰かのコード、IMO のこの種の問題を理解するのは面倒です。

また、Firefox の CPU 使用率をタブごとに簡単に確認できる方法があればいいのにと思います。FF が 100% の CPU を消費していることがよくありますが、どの部分が問題を引き起こしているのか見当がつかないからです。

于 2008-08-20T03:47:03.833 に答える
1

XUL Profilerは、拡張機能とクライアント側の JS が CPU に関して異常に機能していることを指摘できる素晴らしい拡張機能です。タブごとではなく、スクリプトごとに (またはそのように) 機能します。通常、これらの .js スクリプトを手動でタブまたは拡張機能に関連付けることができます。

また、Google Chrome には非常に優れたタスク マネージャーが組み込まれており、タブ、拡張機能、およびプラグインごとにメモリと CPU の使用量が表示されます。

[XUL Profiler] は Javascript プロファイラーです。各メソッドの経過時間をグラフとして表示するだけでなく、ブラウザ キャンバス ゾーンを再描画して、コードの CPU チャンクの消費を追跡するのに役立ちます。

XUL とページのコンテキストですべての JS 呼び出しと描画イベントをトレースします。再描画されるキャンバス ゾーンを動的に表示するアニメーションを作成します。

FF 3.6.10 の時点では、互換性があるとマークされていないため、最新ではありません。しかし、それでも機能し、同様に素晴らしいMR Tech Toolkit 拡張機能を使用して非互換性を無効にすることができます。

于 2010-03-23T08:12:50.263 に答える