package test1;

import java.lang.management.CompilationMXBean;
import java.lang.management.GarbageCollectorMXBean;
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.lang.management.MemoryPoolMXBean;
import java.lang.management.MemoryUsage;
import java.lang.management.OperatingSystemMXBean;
import java.lang.management.RuntimeMXBean;
import java.lang.management.ThreadMXBean;
import java.util.List; public class Test11 {
/**
* @param args
*/
public static void main(String[] args) {
//==========================Memory=========================
System.out.println("==========================Memory=========================");
MemoryMXBean memoryMBean = ManagementFactory.getMemoryMXBean();
MemoryUsage usage = memoryMBean.getHeapMemoryUsage();
System.out.println("初始化 Heap: " + (usage.getInit()/1024/1024) + "mb");
System.out.println("最大Heap: " + (usage.getMax()/1024/1024) + "mb");
System.out.println("已经使用Heap: " + (usage.getUsed()/1024/1024) + "mb");
System.out.println("Heap Memory Usage: " + memoryMBean.getHeapMemoryUsage());
System.out.println("Non-Heap Memory Usage: " + memoryMBean.getNonHeapMemoryUsage());
//==========================Runtime=========================
System.out.println("==========================Runtime=========================");
RuntimeMXBean runtimeMBean = ManagementFactory.getRuntimeMXBean();
System.out.println("JVM name : " + runtimeMBean.getVmName());
System.out.println("lib path : " + runtimeMBean.getLibraryPath());
System.out.println("class path : " + runtimeMBean.getClassPath());
System.out.println("getVmVersion() " + runtimeMBean.getVmVersion());
//java options
List<String> argList = runtimeMBean.getInputArguments();
for(String arg : argList){
System.out.println("arg : " + arg);
}
//==========================OperatingSystem=========================
System.out.println("==========================OperatingSystem=========================");
OperatingSystemMXBean osMBean = (OperatingSystemMXBean) ManagementFactory.getOperatingSystemMXBean();
//获取操作系统相关信息
System.out.println("getName() "+ osMBean.getName());
System.out.println("getVersion() " + osMBean.getVersion());
System.out.println("getArch() "+osMBean.getArch());
System.out.println("getAvailableProcessors() " + osMBean.getAvailableProcessors());
//==========================Thread=========================
System.out.println("==========================Thread=========================");
//获取各个线程的各种状态,CPU 占用情况,以及整个系统中的线程状况
ThreadMXBean threadMBean=(ThreadMXBean)ManagementFactory.getThreadMXBean();
System.out.println("getThreadCount() " + threadMBean.getThreadCount());
System.out.println("getPeakThreadCount() " + threadMBean.getPeakThreadCount());
System.out.println("getCurrentThreadCpuTime() " + threadMBean.getCurrentThreadCpuTime());
System.out.println("getDaemonThreadCount() " + threadMBean.getDaemonThreadCount());
System.out.println("getCurrentThreadUserTime() "+ threadMBean.getCurrentThreadUserTime());
//==========================Compilation=========================
System.out.println("==========================Compilation=========================");
CompilationMXBean compilMBean=(CompilationMXBean)ManagementFactory.getCompilationMXBean();
System.out.println("getName() " + compilMBean.getName());
System.out.println("getTotalCompilationTime() " + compilMBean.getTotalCompilationTime());
//==========================MemoryPool=========================
System.out.println("==========================MemoryPool=========================");
//获取多个内存池的使用情况
List<MemoryPoolMXBean> mpMBeanList= ManagementFactory.getMemoryPoolMXBeans();
for(MemoryPoolMXBean mpMBean : mpMBeanList){
System.out.println("getUsage() " + mpMBean.getUsage());
System.out.println("getMemoryManagerNames() "+ mpMBean.getMemoryManagerNames().toString());
}
//==========================GarbageCollector=========================
System.out.println("==========================GarbageCollector=========================");
//获取GC的次数以及花费时间之类的信息
List<GarbageCollectorMXBean> gcMBeanList=ManagementFactory.getGarbageCollectorMXBeans();
for(GarbageCollectorMXBean gcMBean : gcMBeanList){
System.out.println("getName() " + gcMBean.getName());
System.out.println("getMemoryPoolNames() "+ gcMBean.getMemoryPoolNames());
}
//==========================Other=========================
System.out.println("==========================Other=========================");
//Java 虚拟机中的内存总量,以字节为单位
int total = (int)Runtime.getRuntime().totalMemory()/1024/1024;
System.out.println("内存总量 :" + total + "mb");
int free = (int)Runtime.getRuntime().freeMemory()/1024/1024;
System.out.println("空闲内存量 : " + free + "mb");
int max = (int) (Runtime.getRuntime().maxMemory() /1024 / 1024);
System.out.println("最大内存量 : " + max + "mb"); }
}

获取本地的jvm信息,进行图形化展示的更多相关文章

  1. 获取本地IP地址信息

    2012-06-05    /// <summary>         /// 获取本地IP地址信息         /// </summary>         void G ...

  2. 利用Python+pyecharts+tushare图形化展示股票历史财务信息

    在微信或其他平台上,经常能看到别人推荐股票,分析的头头是道,让自己懊恼于没有早点关注到这只股票,好像错失了几个亿.但是投资股票又忌讳听消息跟风,总不能看到别人推荐自己就无脑买入. 看到了一只股票,自己 ...

  3. DL4J实战之六:图形化展示训练过程

    欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇是<DL4J实战>系列的第六 ...

  4. Nginx filebeat+logstash+Elasticsearch+kibana实现nginx日志图形化展示

    filebeat+logstash+Elasticsearch+kibana实现nginx日志图形化展示   by:授客  QQ:1033553122   测试环境 Win7 64 CentOS-7- ...

  5. UAVStack JVM监控分析工具:图形化展示采集及分析监控数据

    摘要:UAVStack推出的JVM监控分析工具提供基于页面的展现方式,以图形化的方式展示采集到的监控数据:同时提供JVM基本参数获取.内存dump.线程分析.内存分配采样和热点方法分析等功能. 引言 ...

  6. iNeuOS工业互联平台,WEB组态(iNeuView)集成图报组件,满足实时数据图形化展示的需求

    目       录 1.      概述... 1 2.      平台演示... 2 3.      应用过程... 3 4.      实时数据展示效果... 5 1.   概述 市场和开源社区有 ...

  7. ioctl()获取本地网卡设备信息

    获得eth0接口所有信息: #include <stdio.h> #include <stdlib.h> #include <sys/types.h> #inclu ...

  8. kong插件Prometheus+grafana图形化展示

    目录 1. 准备工作 3. 为kong添加 prometheus插件 4. 打开kong的metrics支持 4. 配置prometheus.yml添加kong提供的数据信息 5. 在 Grafana ...

  9. Javascript 继承 图形化展示

      <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" conte ...

随机推荐

  1. PHP-MySQL基本操作

    PHP-MySQL基本操作 <?php // 1.防止页面中文乱码 header("content-type:text/html;charset=utf-8"); // 链接 ...

  2. 2019-02-10 扩展Python控制台实现中文反馈信息

    "中文编程"知乎专栏原文地址 参考了周蟒的实现, 运行效果如下: $ python3 解释器.py Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 ...

  3. (简单)华为荣耀4A SCL-TL00的usb调试模式在哪里打开的方法

    就在我们使用PC通过数据线连接上安卓手机的时候,如果手机没有开启Usb调试模式,PC则没办法成功检测到我们的手机,有时候,我们使用的一些功能强大的App好比之前我们使用的一个App引号精灵,老版本就需 ...

  4. 搭建MHA时 yum 安装perl模块提示 baseurl 错误

    今天在搭建MySQL MHA  安装MHA node所需的perl模块(DBD:mysql)时遇到了一个小的错误,如果思路不对的话,还是产生不少麻烦. 现梳理记录下来. 问题现象 执行的命令 yum ...

  5. js 学习之路8:for循环

    1. for循环 <!DOCTYPE html> <html> <meta http-equiv="Content-Type" content=&qu ...

  6. 复制命令(COPY)

    COPY 命令: // 描述: 将一个或多个文件从一个位置复制到另一个位置. ### 注意:如果想复制文件夹,请使用 XCOPY . // 语法:  copy [/a] [/b] [/d] [/v] ...

  7. 【Python 24】52周存钱挑战4.0(函数)

    1.案例描述 按照52周存钱法,存钱人必须在一年52周内,每周递存10元.例如,第一周存10元,第二周存20元,第三周存30元,直到第52周存520元. 记录52周后能存多少钱?即10+20+30+. ...

  8. centos7配置静态ip地址

    1.配置文件所在目录为 /etc/sysconfig/network-scripts cd /etc/sysconfig/network-scripts 2.打开配置文件进行修改,建议在修改之前先备份 ...

  9. Idea+Maven创建scala项目

    1.选择Create New Project 2.如下图选择,然后下一步 3.一直Next,填写groupID,artifactid,projectName之后等待IDEA初始化. 4.IDEA完成初 ...

  10. web框架开发-Django视图层

    视图函数 一个视图函数,简称视图,是一个简单的Python 函数,它接受Web请求并且返回Web响应.响应可以是一张网页的HTML内容,一个重定向,一个404错误,一个XML文档,或者一张图片. . ...