jdk8中JVM off-heap direct-memory native-memory是一个概念吗,有什么区别吗? metaspace有属于哪一部分区域呢?
1. Native memory 是指普通JVM堆之外的内存区域,但仍在操作系统为JVM进程而保留的总用户空间内存之内(例如,在32位Windows上,默认为2 GB)。JVM保留此空间来存储一些内部数据,例如永久生成/方法区域等。 2. Direct memory表示您可以通过使用本机内存java.nio.DirectByteBuffer。 3. Native heap 意味着您可以通过JNI代码使用本机内存,unsafe.allocateMemory或者只是malloc在JNI代码中使用a。 4. Off-heap与Native memory相同。
java.nio.DirectByteBuffer
unsafe.allocateMemory
1. Native memory 是指普通JVM堆之外的内存区域,但仍在操作系统为JVM进程而保留的总用户空间内存之内(例如,在32位Windows上,默认为2 GB)。JVM保留此空间来存储一些内部数据,例如永久生成/方法区域等。
2. Direct memory表示您可以通过使用本机内存
java.nio.DirectByteBuffer
。3. Native heap 意味着您可以通过JNI代码使用本机内存,
unsafe.allocateMemory
或者只是malloc在JNI代码中使用a。4. Off-heap与Native memory相同。