使用命名PID启动Java程序

时间:2014-07-02 17:52:46

标签: java solaris startup

我想在我的solaris盒子上使用命名PID(进程ID)启动我的java程序。 在启动为我的程序生成的任何PID时,我希望它前置一个字符串,以便稍后我可以识别此特定程序并将其关闭。

e.g。如果生成的PID是1234,我想将其创建为EventListener_PID_1234

1 个答案:

答案 0 :(得分:0)

你可以通过tasklist.exe搜索找到你的程序名,然后得到它的PID然后你可以在这里轻松杀死它一个例子来查找与chrome浏览器相关的所有进程

  public static void main(String[] args){
    // TODO code application logic here
try {


    String processrow;

    Process p = Runtime.getRuntime().exec(System.getenv("windir")+"\\system32\\"+"tasklist.exe");

    BufferedReader input =
            new BufferedReader(new InputStreamReader(p.getInputStream()));

    String[] process;

    while ((processrow = input.readLine()) != null) {

        //System.out.println(processrow); to display all tasklist.exe processes table

        process = processrow.split("\\s+");

        if(process[0].equalsIgnoreCase("chrome.exe")) // index 0 hold the program name 
        {
        System.out.println(process[1]); // index 1 hold the program PID assign by theOS 

        }


    }
    input.close();

    // your process killing code gose here
} catch (Exception err) {
    err.printStackTrace();
}

}