0

Nokia Ahsa 305 での動作に焦点を当てた S40 用のアプリを開発しています。アプリの一部のページでは、非常に多くのデータ (210 ラベル データのように 10 列で 21 行) で満たされたいくつかのテーブルを示しています。そのテーブルのメモリ使用量を表示すると、大幅に上昇し、テーブルを再度表示しようとすると、OutOfMemoryException が発生します。

効率的なメモリ管理のために実行できるガイドラインはありますか?

ここで、私の記憶図からいくつかの画像を見つけることができます。

表を表示する前に:

前

テーブルを表示すると:

表示中

表フォームに戻った後

後

4

1 に答える 1

1

その量のデータでメモリが著しく増加することはありません。一部のラベルで画像を使用しない限り、このようなテーブルが 200kb 以上のメモリを使用する必要があるとは思えません。Codename One のコンポーネントは、多くのフィールドを持たないため、1kb を超えるべきではありませんが、すべてのコンポーネントに非常に長い文字列がある場合 (200 コンポーネント テーブルでは表示されないため、これは疑問です) .

あなたの説明からは言いにくいですが、RAMが収集されない理由を説明するメモリリークがあるかもしれません。

Codename Oneで修正した LWUIT 1.5 の EncodedImage に問題がありましたが、私が理解している限り、Nokia の担当者は Codename One リソースでの EncodedImage の使用を削除しました。

于 2013-07-13T12:32:51.927 に答える