以下是我在网上找到的:
        int kb = 1024;   
        // 可使用内存   
        long totalMemory = Runtime.getRuntime().totalMemory() / kb;   
        // 剩余内存   
        long freeMemory = Runtime.getRuntime().freeMemory() / kb;   
        // 最大可使用内存   
        long maxMemory = Runtime.getRuntime().maxMemory() / kb;   
        OperatingSystemMXBean osmxb = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();   
        // 操作系统   
        String osName = System.getProperty("os.name");   
        // 总的物理内存   
        long totalMemorySize = osmxb.getTotalPhysicalMemorySize() / kb;   
        // 剩余的物理内存   
        long freePhysicalMemorySize = osmxb.getFreePhysicalMemorySize() / kb;   
        // 已使用的物理内存   
        long usedMemory = (osmxb.getTotalPhysicalMemorySize() - osmxb.getFreePhysicalMemorySize()) / kb;   应该用那个计算内存使用率啊,还有我们头说要在计算内存使用率之前先gc一下,咋加啊。
希望高手能帮我把Runtime和osmxb取的内存简单说一下分别。谢谢啦