国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - Java如何獲取當(dāng)前進(jìn)程ID以及所有Java進(jìn)程的進(jìn)程ID

Java如何獲取當(dāng)前進(jìn)程ID以及所有Java進(jìn)程的進(jìn)程ID

2020-11-06 20:58zgljl2012 Java教程

本篇文章主要介紹了Java如何獲取當(dāng)前進(jìn)程ID以及所有Java進(jìn)程的進(jìn)程ID,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

首先是獲取當(dāng)前Java運(yùn)行的Java進(jìn)程ID,這個(gè)是網(wǎng)上常見的,也就是Java程序自身將進(jìn)程ID打印出來:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.test;
 
import java.lang.management.ManagementFactory;
import java.lang.management.RuntimeMXBean;
 
public class Target {
 
  public static void main(String[] args) throws InterruptedException {
    System.out.println(getProcessID());
    while(true) {
      Thread.sleep(10000);
    }
  }
 
  public static final int getProcessID() {
    RuntimeMXBean runtimeMXBean = ManagementFactory.getRuntimeMXBean();
    System.out.println(runtimeMXBean.getName());
    return Integer.valueOf(runtimeMXBean.getName().split("@")[0])
        .intValue();
  }
 
}

運(yùn)行結(jié)果:

?
1
2
2896@PC-20150603VRPL
2896

ManagementFactory是一個(gè)在運(yùn)行時(shí)管理和監(jiān)控Java VM的工廠類,它能提供很多管理VM的靜態(tài)接口,比RuntimeMXBean;

RuntimeMXBean是Java虛擬機(jī)的運(yùn)行時(shí)管理接口.

當(dāng)前進(jìn)程ID為2896。

但這種讓Java進(jìn)程自行打印ID的方式并不太好用,因?yàn)楹芏鄷r(shí)候我們是需要在不修改代碼另一個(gè)Java程序代碼的情況下知道這個(gè)正在運(yùn)行著的Java進(jìn)程的ID,如果你也有這個(gè)需求,可以看一下下面的解決方法:

獲取所有正在運(yùn)行著的Java進(jìn)程

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package com.test;
 
import java.util.HashSet;
import java.util.Set;
 
import sun.jvmstat.monitor.MonitoredHost;
import sun.jvmstat.monitor.MonitoredVm;
import sun.jvmstat.monitor.MonitoredVmUtil;
import sun.jvmstat.monitor.VmIdentifier;
 
public class ProcessID {
 
  public static void main(String[] args) throws Exception {
     // 獲取監(jiān)控主機(jī)
     MonitoredHost local = MonitoredHost.getMonitoredHost("localhost");
     // 取得所有在活動(dòng)的虛擬機(jī)集合
     Set<?> vmlist = new HashSet<Object>(local.activeVms());
     // 遍歷集合,輸出PID和進(jìn)程名
     for(Object process : vmlist) {
       MonitoredVm vm = local.getMonitoredVm(new VmIdentifier("//" + process));
       // 獲取類名
       String processname = MonitoredVmUtil.mainClass(vm, true);
       System.out.println(process + " ------> " + processname);
     }
   }
}

運(yùn)行結(jié)果:

?
1
2
3
2752 ------>
5172 ------> com.test.Target
5308 ------> com.test.ProcessID

這樣,就可以根據(jù)類名找到進(jìn)程號(hào)了。

MonitoredHost等類位于${JAVA_HOME}/lib/tools.jar

下面是一個(gè)可以直接根據(jù)類找到對(duì)應(yīng)Java進(jìn)程ID的方法:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
package com.test;
 
import java.net.URISyntaxException;
import java.util.HashSet;
import java.util.Set;
 
import sun.jvmstat.monitor.MonitorException;
import sun.jvmstat.monitor.MonitoredHost;
import sun.jvmstat.monitor.MonitoredVm;
import sun.jvmstat.monitor.MonitoredVmUtil;
import sun.jvmstat.monitor.VmIdentifier;
 
public class ProcessID {
 
  public static void main(String[] args) throws Exception {
     int pid = getProcess(Target.class);
     System.out.println("PID: "+pid);
  }
 
  public static int getProcess(Class<?> cls) throws MonitorException, URISyntaxException {
    if(cls == null) {
      return -1;
    }
 
    // 獲取監(jiān)控主機(jī)
    MonitoredHost local = MonitoredHost.getMonitoredHost("localhost");
    // 取得所有在活動(dòng)的虛擬機(jī)集合
    Set<?> vmlist = new HashSet<Object>(local.activeVms());
    // 遍歷集合,輸出PID和進(jìn)程名
    for(Object process : vmlist) {
      MonitoredVm vm = local.getMonitoredVm(new VmIdentifier("//" + process));
      // 獲取類名
      String processname = MonitoredVmUtil.mainClass(vm, true);
      if(cls.getName().equals(processname)) {
        return ((Integer)process).intValue();
      }
    }
    return -1;
  }
}

運(yùn)行結(jié)果:

PID: 5172

源碼位于我的Github項(xiàng)目aoptracer的com.test包里

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://blog.csdn.net/zgljl2012/article/details/50989976

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 在线无码| 日韩精品一区二区三区四区五区 | 在线视频 亚洲 | 国产欧美成人 | 日韩一级视频 | 综合色区 | 久久久久久久国产精品 | 最近免费中文字幕大全免费版视频 | 亚洲综合精品 | 国产精品伦一区二区三级视频 | 日日嗨av一区二区三区四区 | 亚洲免费片 | 2022天天操 | 欧美大片免费高清观看 | 天天干狠狠操 | 亚洲精品第一区在线观看 | 久久中文字幕一区 | 亚洲一区国产 | 久草免费在线视频 | 久久久久综合狠狠综合日本高清 | 欧美激情国产日韩精品一区18 | 亚洲小视频 | 精品乱码一区二区三四区 | 北条麻妃一区二区免费播放 | 精品无码久久久久久国产 | 久久精品一级 | 日韩高清国产一区在线 | 成人免费在线播放 | 美女在线一区 | 一级在线免费视频 | 在线观看免费视频a | 国产美女久久久 | 天堂中文网官网 | 亚洲成人久久久 | 视频一区二区在线观看 | 国产人妖在线 | 免费看黄的视频网站 | 国产精品久久久久久久久久东京 | 亚洲精品久久久久久一区二区 | 欧美成人a∨高清免费观看 亚洲国产精品尤物yw在线观看 | 亚洲最新无码中文字幕久久 |