IOBufferMemoryDe​​scriptor应该免费发布吗?

问题描述

我正在查看IOBufferMemoryDescriptor的文档。它说“...。除非另有说明,否则您还负责释放分配的缓冲区。”

IOBufferMemoryDescriptor::free也存在。我的问题是:我应该使用free还是release(或可能同时使用)进行清理?

解决方法

当使用free()删除最后一个句柄时,会自动调用

OSSafeReleaseNULL。 (这在内部调用release(),但通常最好使用宏。)

因此,永远不要直接调用free()方法,您只需要在自己的子类中重写它的上下文中关心它即可。始终对OSObject派生的类使用引用计数机制。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...