Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 package org.ros.internal.system;
00018
00019 import java.lang.management.ManagementFactory;
00020
00026 public class Process {
00027
00028 private Process() {
00029
00030 }
00031
00036 public static int getPid() {
00037
00038
00039 try {
00040 String mxName = ManagementFactory.getRuntimeMXBean().getName();
00041 int idx = mxName.indexOf('@');
00042 if (idx > 0) {
00043 try {
00044 return Integer.parseInt(mxName.substring(0, idx));
00045 } catch (NumberFormatException e) {
00046 return 0;
00047 }
00048 }
00049 } catch (NoClassDefFoundError unused) {
00050
00051
00052 try {
00053 return (Integer) Class.forName("android.os.Process").getMethod("myPid").invoke(null);
00054 } catch (Exception unused1) {
00055
00056
00057 }
00058 }
00059 throw new UnsupportedOperationException();
00060 }
00061 }