Spec-Zone.ru › OpenJDK 24

Класс PipedOutputStream

java.lang.Object
java.io.OutputStream
java.io.PipedOutputStream
Все реализованные интерфейсы:
Closeable, Flushable, AutoCloseable
public class PipedOutputStream extends OutputStream
Поток вывода данных типа pipe может быть подключен к потоку ввода типа pipe для создания канала связи. Поток вывода типа pipe является отправляющей стороной канала. Обычно данные записываются в объект PipedOutputStream одним потоком, а данные считываются из подключенного объекта PipedInputStream другим потоком. Не рекомендуется использовать оба объекта из одного потока, так как это может привести к тупиковой ситуации. Кана́л считается разрушенным, если поток, считывающий байты данных из подключенного потока ввода типа pipe, больше не жив.
С тех пор:
1.0
См. также:
  • PipedInputStream

Краткое описание конструкторов

Конструктор Описание
PipedOutputStream()
Создаёт поток вывода типа pipe, который ещё не подключён к потоку ввода типа pipe.
PipedOutputStream(PipedInputStream snk)
Создаёт поток вывода типа pipe, подключённый к указанному потоку ввода типа pipe.

Краткое описание методов

Модификатор и тип Метод Описание
void close()
Закрывает этот поток вывода типа pipe и освобождает все системные ресурсы, связанные с этим потоком.
void connect(PipedInputStream snk)
Подключает этот поток вывода типа pipe к получателю.
void flush()
Очищает этот поток вывода и принудительно записывает все буферизованные байты вывода.
void write(byte[] b, int off, int len)
Записывает len байтов из указанного массива байтов, начиная с смещения off, в этот поток вывода типа pipe.
void write(int b)
Записывает указанный byte в поток вывода типа pipe.

Методы, объявленные в классе 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
Создаёт поток вывода типа pipe, подключённый к указанному потоку ввода типа pipe. Байты данных, записанные в этот поток, будут доступны в качестве ввода из snk.
Параметры:
snk - Поток ввода типа pipe, к которому нужно подключиться.
Исключения:
IOException - Если произошла ошибка ввода-вывода.

PipedOutputStream

public PipedOutputStream()
Создаёт поток вывода типа pipe, который ещё не подключён к потоку ввода типа pipe. Он должен быть подключён к потоку ввода типа pipe, либо получателем, либо отправителем, перед использованием.
См. также:
  • PipedInputStream.connect(java.io.PipedOutputStream)
  • connect(java.io.PipedInputStream)

Подробное описание методов

connect

public void connect(PipedInputStream snk) throws IOException
Подключает этот поток вывода типа pipe к получателю. Если этот объект уже подключен к какому-то другому потоку ввода типа pipe, выбрасывается IOException.

Если snk является отключённым потоком ввода типа pipe, а src является отключённым потоком вывода типа pipe, то их можно подключить либо с помощью вызова:

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

write

public void write(int b) throws IOException
Записывает указанный byte в поток вывода типа pipe.

Реализует метод write интерфейса OutputStream.

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

write

public void write(byte[] b, int off, int len) throws IOException
Записывает len байтов из указанного массива байтов, начиная со смещения off, в этот поток вывода типа pipe. Этот метод блокируется до тех пор, пока все байты не будут записаны в поток вывода.
Переопределяет:
write в классе OutputStream
Параметры:
b - данные.
off - начальное смещение в данных.
len - количество байтов для записи.
Исключения:
IOException - Если канал разрушен, unconnected, закрыт, или если произошла ошибка ввода-вывода.
IndexOutOfBoundsException - Если off отрицательно, len отрицательно или len больше чем b.length - off

flush

public void flush() throws IOException
Очищает этот поток вывода и принудительно записывает все буферизованные байты вывода. Это уведомит всех читателей о том, что байты ожидают в канале.
Определено в:
flush в интерфейсе Flushable
Переопределяет:
flush в классе OutputStream
Исключения:
IOException - Если произошла ошибка ввода-вывода.

close

public void close() throws IOException
Закрывает этот поток вывода типа pipe и освобождает все системные ресурсы, связанные с этим потоком. Этот поток больше не может быть использован для записи байтов.
Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Переопределяет:
close в классе OutputStream
Исключения:
IOException - Если произошла ошибка ввода-вывода.

Сообщить об ошибке или предложить улучшение
Для получения дополнительной справки по API и документации для разработчиков см. Java SE Documentation, который содержит более подробные описания, предназначенные для разработчиков, с концептуальными обзорами, определениями терминов, решениями проблем и примерами рабочего кода. Другие версии.
Java — товарный знак или зарегистрированный товарный знак Oracle и/или её аффилированных организаций в США и других странах.
Copyright © 1993, 2025, Oracle и/или её аффилированные организации, 500 Oracle Parkway, Redwood Shores, CA 94065 США.
Все права защищены. Использование подлежит условиям лицензии и политике перераспределения документации.
DRAFT 24-ea+36-Debian-1

© 1993, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/io/PipedOutputStream.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API