: 나는이 코딩 할 때 내가 기대 그래서포인터와 가비지 컬렉션
loadedImageDraggable.setBitmap(bitmap);
Log.v(TAG, "recycled image1 :"+bitmap);
Log.v(TAG, "recycled image2 :"+loadedImageDraggable.getBitmap());
bitmap.recycle();
bitmap = null;
Log.v(TAG, "recycled image3 :"+bitmap);
Log.v(TAG, "recycled image4 :"+loadedImageDraggable.getBitmap());
, 비트 맵 객체가 메모리에서 제거 얻을 것입니다.
recycled image1 :[email protected]
recycled image2 :[email protected]
recycled image3 :null
recycled image4 :[email protected]
당신은 여전히 loadedImageDraggable에 싸여 주변이 비트 맵 객체가 발생한 것을, 마지막 줄에 볼 수 있습니다 내가 코드를 실행했을 때 내가 실제로 가지고하면이 로그 추적이다. 객체는 참조를 통해 메소드에 전달되므로 객체가 null로 설정되면 Java에서 해당 비트 맵 객체에 대한 모든 참조를 정리해야합니다. 혼란 스럽습니다 :/ 누군가 이걸 해결할 수 있습니까?
'loadedImageDragable'의 클래스는 무엇입니까? 어쨌든 아마도 주 인스턴스가 아니라 복사본이 반환 될 것입니다. – SJuan76
아니요 - 클래스에 비트 맵 복사 작업이 없습니다. 내부 Bitmap 속성에 대한 getter 및 setter가 있습니다. – stoefln