본문 바로가기
프로그래밍/Android

(Android) LruCache

by LiveData 2018. 12. 20.
반응형

LruCache: 이미지에 대한 메모리 관리를 할 때 사용


'시스템 구조' 수업시간에 LruCache에 대해 들었었다.


그래서 안드로이드에서도 LruCache가 있다는 것에 신기하였다.



사용 예)

 LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(10)  //10개의 이미지가 들어가는 LruCache


String result=cache.get("1.jpg");

if(result==null) {

cache.put("1.jpg",bitmapImage);

}


//cahce에 "1.jpg"의 이름 변수가 없을경우 put을 통해 cache에 추가한다.



이런식으로 캐쉬에 이미지를 넣어서 관리 할 수 있다.



추가 +


int maxSize = 10;

LruCache<String, Bitmap> cache = new LruCache<String, Bitmap>(maxSize){

@Override

protected int sizeOf(String key, Bitmap bitmap){

return bitmap.getByteCount();

}

};


출처: http://ccdev.tistory.com/33 [초보코딩왕의 Power Dev.]




이런식으로 "sizeOf" 메소드를 Override할 경우 가용메모리가 10이란 뜻이된다.

반응형