从java获取OS内存大小
问题描述:
有没有办法从java获取操作系统上的总内存大小?使用
Are there any way to get the size of the total memory on the operating system from java? Using
Runtime.getRuntime().maxMemory()
返回JVM的允许内存,而不是操作系统的内存。有没有人有办法获得这个(来自java代码)?
returns the allowed memory for the JVM, not of the operating system. Does anyone have a way to obtain this (from java code)?
答
com.sun.management.OperatingSystemMXBean bean =
(com.sun.management.OperatingSystemMXBean)
java.lang.management.ManagementFactory.getOperatingSystemMXBean();
long max = bean.getTotalPhysicalMemorySize();
返回JVM的可用RAM大小(受32位限制),而不是堆大小。
returns available RAM size for JVM (limited by 32bit), not the heap size.