RenderScript - 在你完成它时创建的每个Allocation对象上调用Allocation.destroy()是一个好习惯吗?

时间:2017-05-22 11:00:08

标签: android renderscript

我在使用RenderScript时遇到了内存管理方面的问题,所以我认为由于Allocation.createFromBitmap()/createTyped()占用了内存,Allocation.destroy()会释放它所消耗的内存。

这样做是不错的做法,基于RenderScript的程序还有什么好的做法?

1 个答案:

答案 0 :(得分:2)

分配的终结器将在GC发生时回收记忆。

但是,是的,当您不再需要时,摧毁分配是一种很好的做法。

一条评论:从位图创建分配时调用Allocation.createFromBitmap(RenderScript rs, Bitmap b)通常是个好习惯。它会使分配与位图共享数据,因此只要位图的步幅在32字节或16字节边界上对齐,就不需要来回复制。