diff options
Diffstat (limited to 'NET/worlds/core/SystemInfo.java')
| -rw-r--r-- | NET/worlds/core/SystemInfo.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/NET/worlds/core/SystemInfo.java b/NET/worlds/core/SystemInfo.java index 8a138aa..594c88d 100644 --- a/NET/worlds/core/SystemInfo.java +++ b/NET/worlds/core/SystemInfo.java @@ -7,6 +7,8 @@ import java.io.PrintStream; public class SystemInfo implements MainCallback, MainTerminalCallback { private static SystemInfo instance = new SystemInfo(); + private static final com.sun.management.OperatingSystemMXBean operatingSystemMXBean = + (com.sun.management.OperatingSystemMXBean) java.lang.management.ManagementFactory.getOperatingSystemMXBean(); private long _lastFrame = 0L; private long _lastReport = 0L; private long _min; @@ -111,22 +113,19 @@ public class SystemInfo implements MainCallback, MainTerminalCallback { } public static int GetTotalPhysicalMemory() { - return (int)(Runtime.getRuntime().maxMemory() / 1024L); + return (int)(operatingSystemMXBean.getTotalPhysicalMemorySize() / 1024L); } public static int GetAvailPhysicalMemory() { - return (int)(Runtime.getRuntime().freeMemory() / 1024L); + return (int)(operatingSystemMXBean.getFreePhysicalMemorySize() / 1024L); } public static int GetTotalPagedMemory() { - return (int)(Runtime.getRuntime().totalMemory() / 1024L); + return (int)(operatingSystemMXBean.getTotalSwapSpaceSize() / 1024L); } public static int GetAvailPagedMemory() { - Runtime runtime = Runtime.getRuntime(); - long availableMemory = runtime.maxMemory() - (runtime.totalMemory() - runtime.freeMemory()); - - return (int)(availableMemory / 1024L); + return (int)(operatingSystemMXBean.getFreeSwapSpaceSize() / 1024L); } public static String GetPlatformID() { |