Spec-Zone.ru › OpenJDK 25

Класс PipedOutputStream

java.lang.Object
java.io.OutputStream
java.io.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 в выходной поток.

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

nullOutputStream, write

Методы, объявленные в классе 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, закрыт или произошла ошибка ввода-вывода.
IndexOutOfBoundsException — если off отрицательно, len отрицательно или len больше b.length - off

flush

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

close

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

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

© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/io/PipedOutputStream.html

Spec-Zone.ru

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