我有以下代码:指针和垃圾收集
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。由于对象是通过引用传递给方法的,我期望java在对象被设置为null时清除对该位图对象的所有引用。 我很困惑:/ 有人可以帮我解决这个问题吗?
这是'loadedImageDragable'类吗?无论如何,它可能不是它的主要实例,而是一个副本。 – SJuan76
no-在该类中没有位图复制操作。内部Bitmap属性只有一个getter和setter。 – stoefln