最近、関数を宣言し、次のように関数をfor
ループに入れます。
Bitmap image = ...//Do stuff to get image's bitmap, it's quite ok
for(int i =0; i < someNumber; i++){
image = doSomeThing(image, width, height);
}
private Bitmap doSomeThing(image, width, height){
int[] a = new int[10000];
Bitmap bitmap = image.copy(sentBitmap.getConfig(), true);
// Do some stuff here to process image
...
return (bitmap);
}
for
ループ引数がsomeNumber
5 より小さい場合、私のアプリケーションは問題なく動作します。それ以外の場合はoutOfMemory
. だから私はこれを解決するための提案を求めたいexception
! 使えますSystem.gc()
か?または、各ループの後に未使用のメモリを削除するために何かをすることはできますfor
か?
編集済み: 申し訳ありませんが、省略しすぎた可能性があります。コードを更新しました!
Edited2 :for
ループの代わりに call image = doSomething(...)
for 複数回使用すると、exception
もうありません!!
ありがとう!