iモード携帯電話用Java(iアプリ) Part20at TECH
iモード携帯電話用Java(iアプリ) Part20 - 暇つぶし2ch542:デフォルトの名無しさん
10/02/18 19:15:34
>>540
どういう設計になってるか分からんから正確にはコメントできないけど、
画像の読み込み全般は基本的にキャンバス(画面)読み込み時に一気に行うべきで、
途中で逐次ロードするようにするべきではない。
当然ながら、外部ストレージから開いたファイルは、閉じなくてはならない。
画面の初期化時にのみ画像が読み込まれるなら、画面を閉じるときに画像は破棄できるオブジェクトなわけで、
キャンバスのメンバとして画像を設定しておけばガベコレ任せでヒープは正しく回収される。
従って、画面の初期化時にヒープを上回る量の画像を読み込まなければいけないような場合は画面設計そのものが間違いであり、
事前にロードする画像の量を減らせるように読み込む画像のパスリストを画面に与えるなりする方法を取るべきである。
また、メニュー画面など主画面とは別個で制御できうるものが存在するなら、
その画面は別のキャンバスとすることによりメモリ削減を図ることが可能である。
ファイルの開きっぱなしを犯してはならない根拠として、「開きっぱなしでアプリケーションが落ちた場合」の挙動が考えられる。
通常、windowsアプリの場合であればOSが落ちたアプリケーションが開いたファイルハンドルは全てcloseしてくれるが、
携帯電話、特にjavaの場合は全く不明である。最悪、開きっぱなしでアプリケーションが終了すればファイル領域のみならずディレクトリ、パーティションまで物理的に壊れることも考えられる。
ファイルはオープン/読み込み/クローズが一体と考えるべきである。
以上。
文句あるならコード晒せ。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch