0

私のアプリは、さまざまなイベントによってトリガーされる DOM を操作する backbone.js で多くの JavaScript を使用しています。Google Chrome でタブ クラッシュが発生することがあります (Chrome 全体のクラッシュではなく、タブのクラッシュのみ)。この問題の実際の原因を調査していますが、手がかりはありません。Chrome タスク マネージャーからタブでメモリを監視しましたが、メモリ使用量が少ない場合でもクラッシュが発生します。

この種の問題をデバッグする方法はありますか? 問題が何であるかを特定する手がかりはありません。

アップデート

問題は、クラッシュを意図的に再現するのが容易ではないことです。一部のユーザーに発生することがあります。そして、それらのユーザーは通常、それを繰り返し経験します(通常、送信ボタンをクリックした後)。一方、他のユーザーにとっては、複雑な DOM 操作の後、タブが 200M を超えるメモリを使用し始めても、Chrome は引き続き正常に動作します。開発者ツールでプロファイリング ツールを使用するのも 1 つの方法かもしれませんが、問題を特定するまでは非常に手間がかかります。誰かが問題が何であるかを特定する効率的な方法を知っていれば素晴らしいでしょう...

また、メモリ リークに悩まされていることもわかっています。そのため、イベントがバインドされている DOM が削除されたら、イベントのバインドを解除し始めました。これにより、タスク マネージャーから監視している限り、大量のメモリの使用を避けることができました。ただし、これが十分に行われたかどうかはわかりません。タブのクラッシュと関係があります...

4

1 に答える 1

0

開発者ツールを開き、[コンソール] タブをクリックしconsole.log(message);てコード全体に追加し、クラッシュする前にコードがどこにあるのかを確認します。これ以上の情報がなければ、他にやるべきことはあまりありません。

于 2013-03-14T14:28:27.733 に答える