在Java中获得当前Java进程的PID

来源:互联网 发布:淘宝处罚考试答案 编辑:程序博客网 时间:2024/05/22 15:40

方法很多。原来基本上是通过JNI,调用GetCurrentProceessId()。当然有一些库,比如Apache API,等等。其实也是调用JNI,不过是给封装好了。

前天在网上查到一个方法,测试了一下,比较方便,不需要JNI和第三方库:

    public long get() {        String processName =                java.lang.management.ManagementFactory.getRuntimeMXBean().getName();        return Long.parseLong(processName.split("@")[0]);    }

调用的是Java的Management Bean,获得当前的RuntimeMXBean的Name,从中解析出PID。查了下这个貌似JDK不保证这个一定包含PID。但是测试了一下,在Windows上,JDK5/6/7/8都是可用的。Linux上测试了JDK6/7,也是可用的。所以可以作为一个比较简便的获取PID的方案。

0 0
原创粉丝点击