java代码获取jvm和heap的内存参数
来源:互联网 发布:淘宝达人2c 编辑:程序博客网 时间:2024/06/18 09:59
MemoryMXBean memorymbean = ManagementFactory.getMemoryMXBean(); MemoryUsage usage = memorymbean.getHeapMemoryUsage(); System.out.println("INIT HEAP: " + usage.getInit()); System.out.println("MAX HEAP: " + usage.getMax()); System.out.println("USE HEAP: " + usage.getUsed()); System.out.println("\nFull Information:"); System.out.println("Heap Memory Usage: " + memorymbean.getHeapMemoryUsage()); System.out.println("Non-Heap Memory Usage: " + memorymbean.getNonHeapMemoryUsage()); List<String> inputArguments = ManagementFactory.getRuntimeMXBean().getInputArguments(); System.out.println("===================java options=============== "); System.out.println(inputArguments); System.out.println("=======================通过java来获取相关系统状态============================ "); int i = (int)Runtime.getRuntime().totalMemory()/1024;//Java 虚拟机中的内存总量,以字节为单位 System.out.println("总的内存量 i is "+i); int j = (int)Runtime.getRuntime().freeMemory()/1024;//Java 虚拟机中的空闲内存量 System.out.println("空闲内存量 j is "+j); System.out.println("最大内存量 is "+Runtime.getRuntime().maxMemory()/1024); System.out.println("=======================OperatingSystemMXBean============================ "); OperatingSystemMXBean osm = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean(); // System.out.println(osm.getFreeSwapSpaceSize()/1024); // System.out.println(osm.getFreePhysicalMemorySize()/1024); // System.out.println(osm.getTotalPhysicalMemorySize()/1024); //获取操作系统相关信息 System.out.println("osm.getArch() "+osm.getArch()); System.out.println("osm.getAvailableProcessors() "+osm.getAvailableProcessors()); //System.out.println("osm.getCommittedVirtualMemorySize() "+osm.getCommittedVirtualMemorySize()); System.out.println("osm.getName() "+osm.getName()); //System.out.println("osm.getProcessCpuTime() "+osm.getProcessCpuTime()); System.out.println("osm.getVersion() "+osm.getVersion()); //获取整个虚拟机内存使用情况 System.out.println("=======================MemoryMXBean============================ "); MemoryMXBean mm=(MemoryMXBean)ManagementFactory.getMemoryMXBean(); System.out.println("getHeapMemoryUsage "+mm.getHeapMemoryUsage()); System.out.println("getNonHeapMemoryUsage "+mm.getNonHeapMemoryUsage()); //获取各个线程的各种状态,CPU 占用情况,以及整个系统中的线程状况 System.out.println("=======================ThreadMXBean============================ "); ThreadMXBean tm=(ThreadMXBean)ManagementFactory.getThreadMXBean(); System.out.println("getThreadCount "+tm.getThreadCount()); System.out.println("getPeakThreadCount "+tm.getPeakThreadCount()); System.out.println("getCurrentThreadCpuTime "+tm.getCurrentThreadCpuTime()); System.out.println("getDaemonThreadCount "+tm.getDaemonThreadCount()); System.out.println("getCurrentThreadUserTime "+tm.getCurrentThreadUserTime()); //当前编译器情况 System.out.println("=======================CompilationMXBean============================ "); CompilationMXBean gm=(CompilationMXBean)ManagementFactory.getCompilationMXBean(); System.out.println("getName "+gm.getName()); System.out.println("getTotalCompilationTime "+gm.getTotalCompilationTime()); //获取多个内存池的使用情况 System.out.println("=======================MemoryPoolMXBean============================ "); List<MemoryPoolMXBean> mpmList=ManagementFactory.getMemoryPoolMXBeans(); for(MemoryPoolMXBean mpm:mpmList){ System.out.println("getUsage "+mpm.getUsage()); System.out.println("getMemoryManagerNames "+mpm.getMemoryManagerNames().toString()); } //获取GC的次数以及花费时间之类的信息 System.out.println("=======================MemoryPoolMXBean============================ "); List<GarbageCollectorMXBean> gcmList=ManagementFactory.getGarbageCollectorMXBeans(); for(GarbageCollectorMXBean gcm:gcmList){ System.out.println("getName "+gcm.getName()); System.out.println("getMemoryPoolNames "+gcm.getMemoryPoolNames()); } //获取运行时信息 System.out.println("=======================RuntimeMXBean============================ "); RuntimeMXBean rmb=(RuntimeMXBean)ManagementFactory.getRuntimeMXBean(); System.out.println("getClassPath "+rmb.getClassPath()); System.out.println("getLibraryPath "+rmb.getLibraryPath()); System.out.println("getVmVersion "+rmb.getVmVersion());
阅读全文
0 0
- java代码获取jvm和heap的内存参数
- java代码获取jvm和heap的内存参数
- 各类Java heap space 解决方法,并通过java代码获取JVM的相关信息,所在操作系统的信息(包含eclipse&myeclipse的调试的内存设置)
- 在java代码中获取JVM参数
- 在java代码中获取JVM参数
- jvm系列一:java内存组成介绍:堆(Heap)和非堆(Non-heap)内存
- java heap space 问题(java的jvm内存超出)
- 内存分析方法和JVM的java heap space问题处理
- Java JVM:内存结构和相关参数
- Java JVM:内存结构和相关参数
- JAVA的JVM的内存可分为3个区:堆(heap)、栈(stack)和方法区(method)
- Java JVM(一):内存结构 和 相关内存参数
- jvm的stack和heap,JVM内存模型,垃圾回收策略,分代收集,增量收集
- jvm的stack和heap,JVM内存模型,垃圾回收策略,分代收集,增量收集
- jvm 内存溢出 在myeclipse中加大tomcat的jvm内存java.lang.OutOfMemoryError: Java heap space
- Java内存模型&JVM参数
- Java虚拟机:JVM中的Stack和Heap
- java heap space解决方法和JVM参数设置
- 关于springMVC的Model中时不能添加自己定义的dto对象
- MyEclipse Tomcat运行时出现Bad Version in .class file解决办法
- Java前端控制器模式
- idea报错Cannot compile Groovy files: no Groovy library is defined for module 'xx'
- TortoiseSVN there has been a problem contacting the server
- java代码获取jvm和heap的内存参数
- SVN权限分配
- 安装Sublime Text 3插件的方法
- 【JavaWeb笔记】服务器、HTTP协议
- 两个完整正则,如何搭建"或"的关系?
- openmv学习
- 如何用一张图片代替 'input:file' 上传本地文件??
- H5解析 | 3个套路就能制作如此火爆的“一镜到底”H5
- 使用input + label替代placeholder