不同种类的DirectByteBuffer
更新时间:
所有DirectByteBuffer
在该类别下,ATP将列出堆中所有DirectByteBuffer。
JVM管控DirectByteBuffer
在该类别下,ATP将列出由JVM自带清理器jdk.internal.ref.Cleaner管控的DirectByteBuffer(即DirectByteBuffer.cleaner字段不为空)。
这些DirectByteBuffer关联一片堆外内存,当DirectByteBuffer对象不再被使用的时候,jdk.internal.ref.Cleaner会负责自动释放关联的堆外内存。
JNI分配的DirectByteBuffer
在该类别下,ATP将列出由JNI方法NewDirectByteBuffer
分配的DirectByteBuffer对象(即DirectByteBuffer.cleaner和DirectByteBuffer.att均为空)。
用户通过Unsafe或JNI手动分配一片内存地址,并将这部分地址作为参数传递给JNI方法NewDirectByteBuffer
,DirectByteBuffer与该地址绑定,这片内存的生命周期由用户负责管理。
文档内容是否对您有帮助?