Wierd problem in linux 2.4.18-bf2.4,
Java Blackdown-1.4.2-rc1 (Solved)
ronald-freebsd8 at klop.yi.org
Tue Jun 28 22:51:30 GMT 2005
On Tue, 28 Jun 2005 08:25:12 +0200, Achilleus Mantzios
<achill at matrix.gatewaynet.com> wrote:
> O Ronald Klop έγραψε στις Jun 27, 2005 :
>> On Mon, 27 Jun 2005 11:14:14 +0200, Achilleus Mantzios
>> <achill at matrix.gatewaynet.com> wrote:
>> > Forgot my homework....
>> > A classic (lack of) consumption of output situation,
>> >> From the java docs:
>> > The Runtime.exec methods may not work well for special processes on
>> > certain native platforms, such as native windowing processes, daemon
>> > processes, Win16/DOS processes on Microsoft Windows, or shell scripts.
>> > The
>> > created subprocess does not have its own terminal or console. All its
>> > standard io (i.e. stdin, stdout, stderr) operations will be
>> redirected to
>> > the parent process through three streams (Process.getOutputStream(),
>> > Process.getInputStream(), Process.getErrorStream()). The parent
>> > uses these streams to feed input to and get output from the
>> > Because some native platforms only provide limited buffer size for
>> > standard input and output streams, failure to promptly write the input
>> > stream or read the output stream of the subprocess may cause the
>> > subprocess to block, and even deadlock.
>> > Sorry for the noise, the situation can pretty well
>> > occur in FreeBSD too when pipe output buffer reaches its limit,
>> > and at the end of the day i think someone maybe will find this
>> > useful in the future.
>> I always create two threads to copy the output of stdout and stderr to
>> some place. (/dev/null or a file or System.out). In java 5 you can
>> stdout and stderr, so you only need 1 thread.
> Right, altho doing
>> dev/null 2>&1
> in the script itself, saves the extra code.
I know scripting. We were talking about Java.
Coding in java expecting a script is doing something you like is not
Amsterdam, The Netherlands
More information about the freebsd-java