자주 사용하는 비트맵에서 늘상 궁금하던 부분이 있는데요.


보통 우리가

Bitmap b1 = BitmapFactory.decodeStream(is);

형식으로 비트맵을 생성하고, 필요 없는 시점에 소멸을 시키잖아요?


그렇다면

Bitmap b2 = Bitmap.createBitmap(b1, 0,0, width, height, matrix, true);

으로 새로운 비트맵을 생성하면

현재 b1, b2 두개의 비트맵이 메모리에 할당된거죠?


그럼 여기서 질문 하나요..

b1 = Bitmap.createBitmap(b1, 0, 0, w, h, m, true);

로 선언하면 원래 메모리에 할당된 b1을 해제하고 다시 할당하는건가요?

아님 replace되는건가요? 만약 replace된다면 메모리가 해제되지 않고 남는 조각(?)같은건 없을까요??


항상 궁금했던부분이내요.

답변 좀 부탁드립니다.