0
私はアンドロイド用に設計されていないライブラリを使用しています。小さなローカルオブジェクトを大量に作成することによって、多くのメモリを使用します。メモリ使用量がピーク時に16MBの制限に達するので、頻繁にガベージコレクションがトリガーされます。私はうまくいくだろうが、gcを頻繁に実行すると、私のリフレッシュハンドラが望ましい遅延で実行されていない(メソッドがあまり頻繁に実行されない)必要があります。ガベージコレクションのため、Androidハンドラの呼び出し回数が少なくて済みました。
class RefreshHandler extends Handler {
@Override
public void handleMessage(Message msg) {
SomeActivity.this.updateView();
}
public void sleep(long delayMillis) {
this.removeMessages(0);
sendMessageDelayed(obtainMessage(0), delayMillis);
}
};
ガベージコレクションを引き起こすものは、自分のスレッドで実行されています。 ライブラリやコードを変更せずに実行するハンドラの規則性を改善する方法はありますか?