review request: 4244896: (process) Provide System.getPid(), System.killProcess(String pid) (original) (raw)

Rob McKenna rob.mckenna at oracle.com
Tue Jun 26 12:30:02 UTC 2012


Thanks Thomas,

As per Alan's mail, we're going to deal with this as a separate issue after we've discussed it.

 -Rob

On 25/06/12 10:52, Alan Bateman wrote:

On 25/06/2012 09:56, Thomas Stüfe wrote:

Hi, Rob,

src/solaris/native/java/lang/UNIXProcessmd.c: You never check the return code of kill(2). kill() may fail if you have no permission to kill the process (EPERM), or if the process id is invalid, maybe it has already been reaped. In both cases an exception would be nice, or if you decide this cannot happen in the context of Process.java, at least an assert(). One thing to add to this is that the destroy method has been there since jdk1.0 and is not defined or specified to throw any exceptions so we can't really change that now. From the history it doesn't look like the return from kill(2) has ever been checked. As it can only ne used to send a signal to processes created by the ProcessBuilder or Runtime.exec API (not arbitrary process) then it is unlikely to fail. Whether the new destroy method should specify an exception may require consideration and maybe a separate bug should be created to consider that. -Alan



More information about the core-libs-dev mailing list