Package bsh.util
Class JConsole.BlockingPipedInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.PipedInputStream
-
- bsh.util.JConsole.BlockingPipedInputStream
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
- Enclosing class:
- JConsole
public static class JConsole.BlockingPipedInputStream extends PipedInputStream
The overridden read method in this class will not throw "Broken pipe" IOExceptions; It will simply wait for new writers and data. This is used by the JConsole internal read thread to allow writers in different (and in particular ephemeral) threads to write to the pipe. It also checks a little more frequently than the original read(). Warning: read() will not even error on a read to an explicitly closed pipe (override closed to for that).
-
-
Field Summary
-
Fields inherited from class java.io.PipedInputStream
buffer, in, out, PIPE_SIZE
-
-
Constructor Summary
Constructors Constructor Description BlockingPipedInputStream(PipedOutputStream pout)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
int
read()
-
Methods inherited from class java.io.PipedInputStream
available, connect, read, receive
-
Methods inherited from class java.io.InputStream
mark, markSupported, nullInputStream, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
-
-
-
Constructor Detail
-
BlockingPipedInputStream
public BlockingPipedInputStream(PipedOutputStream pout) throws IOException
- Throws:
IOException
-
-
Method Detail
-
read
public int read() throws IOException
- Overrides:
read
in classPipedInputStream
- Throws:
IOException
-
close
public void close() throws IOException
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classPipedInputStream
- Throws:
IOException
-
-