G
Girish Betadpur
Hi,
I start a new child process using Runtime.getRuntime().exec(). I have
taken care of all the necessary handling of the input and output streams
(in different streams).
Before I destroy the child process with Process.destroy(), I am trying to
close the standard streams of this external process. When I invoke
Process.getXXXStream().close(), the method hangs and I see that the child
java process consumes 100% CPU. Even after the parent process has died,
the child process continues to run with 100% CPU usage.
This is on Windows 2K/XP, Sun JDK 1.4.2.
Has anybody faced a similar problem? Is it illegal to close the standard
streams of an external process? Or is it required on some platforms?
Thanks,
Girish
I start a new child process using Runtime.getRuntime().exec(). I have
taken care of all the necessary handling of the input and output streams
(in different streams).
Before I destroy the child process with Process.destroy(), I am trying to
close the standard streams of this external process. When I invoke
Process.getXXXStream().close(), the method hangs and I see that the child
java process consumes 100% CPU. Even after the parent process has died,
the child process continues to run with 100% CPU usage.
This is on Windows 2K/XP, Sun JDK 1.4.2.
Has anybody faced a similar problem? Is it illegal to close the standard
streams of an external process? Or is it required on some platforms?
Thanks,
Girish