Tag: pid

如何获取生成的java进程的PID

我正在编写几个java程序,在完成我想做的任何事情后,需要在单独的JVM中终止/清理。 为此,我需要获取我正在创建的java进程的PID。

使用-XX:HeapDumpPath选项但希望集成进程ID

使用-XX:+HeapDumpOnOutOfMemoryError ,如果指定路径下已存在转储文件,则JVM不会覆盖堆转储。 我希望能够在非默认位置拥有多个堆转储,并且计划在堆转储路径中使用pid以允许它。 但是,当我试图像这样指定参数时: -XX:HeapDumpPath=some/heapdump/path/heapdump-%p.hprof 然后创建了一个堆转储,我得到%p而不是文件名中的实际pid。 但是, %p的使用似乎与-XX:OnOutOfMemoryError选项一起使用。 是否有一些我应该用于-XX:HeapDumpPath=其他语法-XX:HeapDumpPath= ?

Java:获取给定pid的进程

假设我已知当前正在运行的进程,如何将其转换为Java中的Process对象? 该进程已经在运行,所以我不想生成另一个进程,我只想将它封装到我可以在java代码中使用的Process对象中。 有点像: int pid = getPid(); Process proc = magicGetProcess(pid); 谢谢

如何找到在java中启动的进程的进程ID(pid)?

如果我通过Runtime.getRuntime().exec(…)或ProcessBuilder.start()在Java中获取进程对象,我可以通过Process.waitFor()等待它,就像Thread.join() ,或者我可以使用Process.destroy()来杀死它,这与已弃用的Thread.stop()类似。 但是:我如何找到过程对象的pid? 我在官方文档中没有看到这样做的方法。 我可以用Java做到这一点吗? 如果是这样,怎么样?