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

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/UNIXProcess_md.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