私の名前はRob Christensenで、私はAdobe AIRのプロダクトマネージャーです。まず、基礎となる技術に関係なく、大量のメモリを消費したり、メモリを解放したりすることなく、デスクトップアプリケーションを構築することは非常に簡単です。 AIRの次のリリースで
、我々はそれが簡単にJavaScriptベースのアプリケーションにメモリリークを識別できるように、AIRランタイムにいくつかの追加機能を提供することを検討しています。 FlashまたはFlexベースのアプリケーションを開発している開発者は、Flex Builderに含まれているメモリプロファイラを活用して、これを追跡することができます。私たちは、JavaScript開発者にとっても同様のことをしたいと考えています。
私の経験では、メモリ内のオブジェクトが決してクリーンアップされないと、メモリリークが発生することがよくあります。たとえば、検索キーワードに基づいてユーザーからのツイートをリストするTwitterクライアントを想像してみてください。残業が増えると、結果がより多く表示され、リストが長くなります。表示されるツイートの最大数に制限がない場合、メモリはもちろん時間の経過とともに上昇します。代わりに、アプリケーションは、そのリストに表示される項目の数に妥当な制限を課す必要があります。
AIRでのメモリ処理に関するベストプラクティスについて説明しています。この記事の例はほとんどがActionScriptで書かれていますが、JavaScriptにも同じ概念が適用されます。
パフォーマンス・チューニングのAIRアプリケーション http://www.adobe.com/devnet/air/articles/air_performance.html
メモリリークがランタイムである場合、我々はできるだけ早く我々はできるようにこれらの上にジャンプします。開発者は、次のフィードバックフォーム(www.adobe.com/go/wish_jp)を使用して、問題をチームに送り返すことで、そのような問題を知ることを推奨します。
あなたはAjaxフレームワークを使用している場合は、その特定のフレームワークのためのメモリリークに関する既知の問題があるかどうかを検討することをお勧めします。
要約すると、はい、デスクトップアプリケーションをビルドするときには、AIRやC++を問わず、常にメモリについて心配する必要があります。アプリケーションを開発する際には、アプリケーションのメモリ使用量を監視して、後で問題を特定できるようにする必要があります。これを行うための1つの方法は、長寿のテストを実行することです - アプリケーションが夜間に開いて、メモリが忍び寄っているかどうかを確認してください。
一般に、ブラウザで利用できるツールは非常に限られています。ブラウザーベンダーがブラウザーにメモリ使用量を特定するためのフックを多く提供するようになるにつれて、これがすぐに変わると私は期待しています。お役に立てれば。
ありがとうございました!
-Rob
プロダクトマネージャーは、Adobe AIR
心配?はい。約何かをする?いいえ。 –
質問を追加しました:) –