`

Java 获取当前JVM进程ID

    博客分类:
  • Java
阅读更多

Java 获取当前JVM进程ID

 

public static final int jvmPid() {
		try {
			RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
			Field jvm = runtime.getClass().getDeclaredField("jvm");
			jvm.setAccessible(true);
			VMManagement mgmt = (VMManagement) jvm.get(runtime);
			Method pidMethod = mgmt.getClass().getDeclaredMethod("getProcessId");
			pidMethod.setAccessible(true);
			int pid = (Integer) pidMethod.invoke(mgmt);
			return pid;
		} catch (Exception e) {
			return -1;
		}
	}

 

tips:可以用jps命令查看jvm进程及其ID,如(Red Hat Enterprise Linux Server release 6.4):

 

 

 

在以下系统测试通过:

1. windows 10

2. Red Hat Enterprise Linux Server release 6.4

3. CentOS Linux release 7.2.1511

  • 大小: 26.4 KB
0
1
分享到:
评论

相关推荐

    Java Process Utils (Forker):用于更好地控制外部进程的 Java 库-开源

    Forker 是一个 Java 库,可让您更好地... 类似于 JSW(Java 服务包装器)和 YAJSW,但更轻量级并使用自由许可,Forker Wrapper 可用于在后台启动进程、跟踪进程 ID、捕获输出以记录日志并自动重启挂起或崩溃的 JVM 等.

    leetcode添加元素使和等于-Algorithm-java:使用java实现基本的算法,探究jvm,多线程,java特性

    通过jdk自带的一些工具,我们可以做对jvm进程的初始参数以及参数值等等进行一个查看 (查看运行的jvm及其唯一id)jps -l就可以查看当前服务器进程及其id (查看jvm运行时参数)jinfo -flag +参数名称 + id,就可以获得...

    Java常见面试题208道.docx

    Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 。...

    JAVA面试题最全集

    一、Java基础知识 1.Java有那些基本数据类型,String是不是基本数据类型,他们有何区别。 2.字符串的操作: 写一个方法,实现字符串的反转,如:输入abc,输出cba 写一个方法,实现字符串的替换,如:输入...

    Linux中使用Shell脚本查看Java线程的CPU使用情况

    一、首先获得jvm的进程ID: 代码如下:ps -ef|grep javatomcat 374 372 1 11:45 ? 00:02:30 jsvc.exec -java-home /usr/java/latest -user tomcat -pidfile /usr/local/tomcat7/logs/tomcat7.pid -outfile /usr/...

    show-busy-java-threads

    用于快速排查Java的CPU性能问题(top us值过高),自动查出运行的Java进程中消耗CPU多的线程,并打印出其线程栈,从而确定导致性能问题的方法调用。 目前只支持Linux。原因是Mac、Windows的ps命令不支持列出进程的线程...

    jca467.zip

    jstack [-l] pid > th.test 导出为text 确保Java在您的PATH上以运行该工具。 启动工具:java -jar jca * .jar 在基于POSIX的系统(例如Linux)上请求线程转储的最简单方法是...例如(用Java进程的进程ID替换$ {PID}):

    MemoryAnalyzer-1.10.0.20200225-win32.win32.x86_64.zip

    通过jmap 导出文件,对jvm...JVM 内存分析软件,查看jvm 内存是否泄漏,那个class 内存泄漏,通过java 命令 jmap -dump:live,format=b,file=${文件路径}/xxx.bin 进程ID 导出bin 文件,用该软件进行对bin文件进行分析

    JAVA核心知识点整理(有效)

    25 JAVA8 与元数据.................................................................................................................................25 2.4. 垃圾回收与算法 .................................

    这是一个关于软件测试面试题目的列表,收集了关于测试理论,自动化测试,性能测试以及其他一些软件测试相关的面试题目

    一张表,里面有ID自增主键,当insert了17条记录之后,删除了第15,16,17条记录,再把Mysql重启,再insert一条记录,这条记录的ID是18还是15 【操作系统问题】 列出超过10个Linux常用的命令以及其作用? 进程和线程是什么?...

    Java工具

    如果是本地虚拟机进程 vmid和本地的虚拟机的唯一id是一致的 第三个参数 :用来指定监视的采样周期 采样间隔 单位是S 第四个参数 count 要采集的样本的次数 打印的参数说明 单位KB 看三位以后 s0c

    新版Android开发教程.rar

    � Google 提供了一套 Java 核心包 (J2SE 5,J2SE 6) 的有限子集,尚不承诺遵守 Java 任何 Java 规范 , 可能会造 成J ava 阵营的进一步分裂。 � 现有应用完善度不太够,需要的开发工作量较大。--------------------...

    浅谈Android中关于静态变量(static)的使用问题

    在PC机的客户端程序中,一个类被加载和卸载,可简单的等同于jvm进程的启动和结束。在Android中,用的DVM也是一样的,不过Android中不太突出进程的概念,所以对静态变量的生命周期就是感觉模糊,这种模糊对于值类型是...

    Android静态变量的生命周期 简单介绍

    在PC机的客户端程序中,一个类被加载和卸载,可简单的等同于jvm进程的启动和结束。那么在Android中呢?用的Dalvik vm也是一样的。不过Android不太突出的进程概念,所以对静态变量的生命周期就会感觉模糊,这种模糊...

    jedis使用指南

    首先说下这个问题的使用场景,有些时候我们业务逻辑是在不同的jvm进程甚至是不同的物理机上的jvm处理的。这样如何来实现不同jvm上的同步问题呢,其实我们可以基于redis来实现一个锁。 具体事务和监听请参考文章:...

    Android 序列化的存储和读取总结及简单使用

    Android 序列化 1.序列化的目的  (1).永久的保存对象数据(将对象数据保存在... (4).Java平台允许我们在内存中创建可复用的Java对象,但一般情况下,只有当JVM处于运行时,这些对象才可能存在,即,这些对象的生命

    net学习笔记及其他代码应用

    28.SQLSERVER服务器中,给定表 table1 中有两个字段 ID、LastUpdateDate,ID表示更新的事务号, LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号 答:Select ID FROM table1 Where ...

    NodesCommunication_DistributedCache_with_Hazlecast:在所有应用程序之间共享的分布式缓存

    服务器之间的 JVM/进程间通信 此应用程序需要在节点之间进行协调,并确保其中一个且只有一个执行 System.out.println("We are started!") 此应用程序在不同节点/机器上的不同进程会从分布式共享缓存并相应地将消息...

    rembedis:Redis 嵌入器做得对

    好吧,主要问题是,如果您没有小心地停止它们,它们会在 JVM 停止后使 redis-server 进程保持活动状态。 使用 rembedis,您不必太在意它,因为关闭钩子会照顾它们并杀死它们。 使用示例 与几乎相同 二进制文件 很快...

    JINI 核心技术

    5.6 使用可激活的后端进程 99 5.7 后面的内容 109 第6章 深入理解:发现 110 6.1 发现是什么 110 6.1.1 用组划分群体的名称空间 111 6.1.2 发现的分类 111 6.1.3 发现机制的要求 112 6.2 发现概述 112 6.2.1 IP组播...

Global site tag (gtag.js) - Google Analytics