Класс PipedOutputStream

Все реализованные интерфейсы:
Closeable, Flushable, AutoCloseable
public class PipedOutputStream
extends OutputStream

Поток вывода типа «труба» может быть соединён с потоком ввода типа «труба» для создания канала связи. Поток вывода типа «труба» является отправляющим концом канала. Как правило, данные записываются в объект PipedOutputStream одним потоком, а данные считываются из соединённого объекта PipedInputStream другим потоком. Использование обоих объектов одним потоком не рекомендуется, так как это может привести к тупиковой ситуации в потоке. Канал считается разрушенным, если поток, который считывал байты данных из соединённого потока ввода типа «труба», больше не жив.

С момента:
1.0
См. также:
PipedInputStream

Конструкторы

Конструктор Описание
PipedOutputStream()

Создаёт поток вывода типа «труба», который ещё не соединён с потоком ввода типа «труба».

PipedOutputStream​(PipedInputStream snk)

Создаёт поток вывода типа «труба», соединённый со специфицированным потоком ввода типа «труба».

Методы

Модификатор и тип Метод Описание
void close()

Закрывает этот поток вывода типа «труба» и освобождает любые системные ресурсы, связанные с этим потоком.

void connect​(PipedInputStream snk)

Подключает этот поток вывода типа «труба» к приёмнику.

void flush()

Очищает этот поток вывода и заставляет любые буферизованные байты вывода быть записанными.

void write​(byte[] b, int off, int len)

Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот поток вывода типа «труба».

void write​(int b)

Записывает указанный byte в поток вывода типа «труба».

Методы, объявленные в классе java.io.OutputStream

nullOutputStream, write

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Конструкторы

PipedOutputStream

public PipedOutputStream(PipedInputStream snk)
                  throws IOException

Создаёт поток вывода типа «труба», соединённый со специфицированным потоком ввода типа «труба». Байты данных, записанные в этот поток, будут доступны в качестве входных данных от snk.

Параметры:
snk - Поток ввода типа «труба» для подключения.
Исключения:
IOException - если возникает ошибка ввода-вывода.

PipedOutputStream

public PipedOutputStream()

Создаёт поток вывода типа «труба», который ещё не соединён с потоком ввода типа «труба». Он должен быть подключён к потоку ввода типа «труба», либо получателем, либо отправителем, прежде чем быть использованным.

См. также:
PipedInputStream.connect(java.io.PipedOutputStream), connect(java.io.PipedInputStream)

Методы

connect

public void connect(PipedInputStream snk)
             throws IOException

Подключает этот поток вывода типа «труба» к приёмнику. Если этот объект уже подключён к какому-то другому потоку ввода типа «труба», выбрасывается IOException.

Если snk является отключённым потоком ввода типа «труба», и src является отключённым потоком вывода типа «труба», они могут быть подключены либо вызовом:

src.connect(snk)
или вызовом:
snk.connect(src)
. Два вызова имеют одинаковый эффект.
Параметры:
snk - поток ввода типа «труба» для подключения.
Исключения:
IOException - если возникает ошибка ввода-вывода.

write

public void write(int b)
           throws IOException

Записывает указанный byte в поток вывода типа «труба».

Реализует метод write из OutputStream.

Указано в:
write в классе OutputStream
Параметры:
b - byte для записи.
Исключения:
IOException - если труба разрушена, unconnected, закрыта или если возникает ошибка ввода-вывода.

write

public void write(byte[] b,
                  int off,
                  int len)
           throws IOException

Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот поток вывода типа «труба». Этот метод блокируется, пока все байты не будут записаны в поток вывода.

Переопределяет:
write в классе OutputStream
Параметры:
b - данные.
off - начальное смещение в данных.
len - количество байтов для записи.
Исключения:
IOException - если труба разрушена, unconnected, закрыта или если возникает ошибка ввода-вывода.

flush

public void flush()
           throws IOException

Очищает этот поток вывода и заставляет любые буферизованные байты вывода быть записанными. Это уведомит всех читателей о том, что байты ожидают в канале.

Указано в:
flush в интерфейсе Flushable
Переопределяет:
flush в классе OutputStream
Исключения:
IOException - если возникает ошибка ввода-вывода.

close

public void close()
           throws IOException

Закрывает этот поток вывода типа «труба» и освобождает любые системные ресурсы, связанные с этим потоком. Этот поток больше не может быть использован для записи байтов.

Указано в:
close в интерфейсе AutoCloseable
Указано в:
close в интерфейсе Closeable
Переопределяет:
close в классе OutputStream
Исключения:
IOException - если возникает ошибка ввода-вывода.

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/PipedOutputStream.html

Spec-Zone .ru
спецификации, руководства, описания, API