监控JVM内存使用情况,剩余空间小于2M时报警详解编程语言

一个简单的类,用来监控JVM内存使用情况,剩余空间小于2M时报警。

import java.lang.management.ManagementFactory; 
import java.lang.management.OperatingSystemMXBean; 
import java.lang.reflect.Method; 
 
/** 
 * Test 
 */ 
public class Test { 
 
    public static void main(String[] args) throws InterruptedException { 
        Runtime runtime = Runtime.getRuntime(); 
        while (true) { 
            long freeMemory = runtime.freeMemory(); 
            long totalMemory = runtime.totalMemory(); 
            long maxMemory = runtime.maxMemory(); 
            String msg = "max:" + (maxMemory / 1024 / 1024) + "M,total:" + (totalMemory / 1024 / 1024) + "M,used:" 
                    + ((totalMemory / 1024 / 1024) - (freeMemory / 1024 / 1024)) + "M,free:" 
                    + (freeMemory / 1024 / 1024) + "M"; 
     
            boolean ok = (maxMemory - (totalMemory - freeMemory) > 2048); // 剩余空间小于2M报警 
            if (!ok) { 
                System.out.println(msg); 
                System.err.println("剩余空间小于2M报警"); 
            } 
            Thread.currentThread().sleep(1 * 1000); 
        } 
    } 
 
}

 

原创文章,作者:Maggie-Hunter,如若转载,请注明出处:https://blog.ytso.com/15908.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论