Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()是否也包含JNI代码分配的内存,还是只包含Java对象分配的内存?此外,C++代码是否也必须适合分配给JVM的内存,还是独立于JVM?
Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()
zy1mlcev1#
Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory():内存包括JVM的所有对象和一些JNI对象的分配。在Java运行时数据区域中,存在对堆中的C++对象或Java对象的本机方法引用。所有对象都在堆上分配。
1条答案
按热度按时间zy1mlcev1#
Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()
:内存包括JVM的所有对象和一些JNI对象的分配。在Java运行时数据区域中,存在对堆中的C++对象或Java对象的本机方法引用。
所有对象都在堆上分配。