2012-08-10 41 views
2

我是新来的Java(C#之前),我不明白如何释放非托管资源。Java - FloatBuffers的空闲内存

我创建这样的FloatBuffer FloatBuffer buffer = FloatBuffer.allocate(length); 如何释放它?有没有免费的,处置或删除方法

+0

这不是非托管资源。 – SLaks 2012-08-10 20:42:10

+1

Java中没有“非托管资源”,因此您不必担心释放它们。 – 2012-08-10 20:56:17

回答

4

java中的所有内存管理都是自动处理的(除了少数与本机代码接口的实例)。

当没有更多的引用到您声明的FloatBuffer时,它将有资格进行垃圾回收。此后的某个时间,垃圾收集器将运行并释放其使用的内存。

1

取消分配的FloatBuffer处理与大多数其他对象相同(总是有例外...)。

一旦你不再有对该对象的引用,当它感觉时间是正确的时,GC就会做它的事情。

1

当垃圾收集器不再需要时,垃圾收集器会处理它,即它在当前活动对象图中不可访问。