Memory 堆内和堆外内存之间的差异

Memory 堆内和堆外内存之间的差异,memory,jvm,off-heap,Memory,Jvm,Off Heap,有人能解释堆内内存和堆外内存之间的区别吗?堆外内存是否显示在JVM内存大小上?堆外内存是否都是指针?所有内存都是本机内存,但是JVM在其JVM堆中管理和记录内存(与本机堆不同) Offheap是一个Java术语,表示不直接管理的内存。但是,可以使用direct ByteBuffer作为原始本机内存的代理对象对其进行间接管理。什么是“不直接管理”意思?这是否意味着该类对象不由JVM管理?这只是JVM中的一个指针吗?@Xiaologzhou它只是一个64位long值,恰好是某个内存的地址。内存是否占

有人能解释堆内内存和堆外内存之间的区别吗?堆外内存是否显示在JVM内存大小上?堆外内存是否都是指针?

所有内存都是本机内存,但是JVM在其JVM堆中管理和记录内存(与本机堆不同)


Offheap是一个Java术语,表示不直接管理的内存。但是,可以使用direct ByteBuffer作为原始本机内存的代理对象对其进行间接管理。

什么是“不直接管理”意思?这是否意味着该类对象不由JVM管理?这只是JVM中的一个指针吗?@Xiaologzhou它只是一个64位
long
值,恰好是某个内存的地址。内存是否占用JVM内存?或者只是64位long值在JVM中,指向的对象超出了JVM的范围?谢谢@小龙洲堆外内存仍然是进程内存的一部分,因此从操作系统的角度来看,它没有什么不同,但它不是JVM使用的正常区域的一部分。