2

我是 java 新手(以前是 C#),我不明白如何释放非托管资源。

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

4

3 回答 3

4

Java 中的所有内存管理都是自动处理的(除了与本机代码接口有关的少数情况)。

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

于 2012-08-10T20:37:59.197 回答
1

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

一旦你不再拥有对该对象的引用,GC 就会在它认为合适的时候做它的事情。

于 2012-08-10T20:37:05.583 回答
1

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

于 2012-08-10T20:38:10.463 回答