bgu*_*uiz 13 java memory java-native-interface jvm
当您指定-Xmx1024m为JVM选项时,JVM是否将所有1024 MB的内存分配给Java对象?
它是否将部分内容用于Java对象,部分内容用于JNI二进制文件,还是JNI二进制文件除了此数量外还必须使用内存?在这种情况下,JVM如何分配/分区/管理内存?
Qua*_*nic 18
正如我在一些JNI代码中发现内存泄漏时发现的第一手资料,JNI二进制文件在任何JVM堆空间之外的JVM进程中使用自己的内存.我们看到Linux实际上已经淘汰了JVM,因为JVM整体上超过了3GB的虚拟内存.但是我们正在使用-Xmx384m并且只在Java对象方面使用了大约40MB,这几乎证明JNI使用JVM堆空间之外的内存.