Добрый день!
Из лекций джавараша:
... Объекты-потоки вообще редко хранят в себе данные. Поток — это инструмент чтения/записи данных, но не хранения. Хотя бывают и исключения. ...
... Еще одной интересной особенностью потоков является возможность объединять несколько потоков в цепочки. Поток может читать данные не только из источника данных, который их хранит, но из другого потока.
Это очень мощный механизм в Java, который позволил конструировать сложные сценарии чтения данных, соединяя одни потоки с другими. Выглядит такая схема примерно так:
Я не нашла поток, который мог бы хранить данные. Можете, пожалуйста, подсказать, что тут имеется в виду? Действительно, есть такие потоки?
Ada
46 уровень
Хранят ли потоки данные?
Обсуждается
Комментарии (4)
- популярные
- новые
- старые
Для того, чтобы оставить комментарий Вы должны авторизоваться
Денис Java Developer
12 августа 2022, 22:08
А что собственно ты потоком называешь?) Что-то мне подсказывает, что ты скорее всего говоришь про Stream API. Но я могу и ошибаться.
0
Ada
13 августа 2022, 16:47
Все, что я привела — это цитаты из лекций. Возможно, авторы и про стрим апи говорят 🤔
А я пока под потоком подразумеваю классы для работы с потоками (да, звучит неоднозначно)..
0
Денис Java Developer
13 августа 2022, 17:11
Ну строго говоря, исходя из семантики слова Поток - это что-то динамическое. Хранение же предполагает диаметрально противоположное этому явление.
Если говорить чуть шире, то поток может хранить в себе данные, посмотри например на ByteArrayOutputStream и его брата input. Ты можешь вычитать целый объект в этот поток при сериализации/десериализации, и потом уже куда-то направить вывод. Можно ли сказать что наш BAOS при этом хранит данные? в принципе, да. Подозреваю что это же верно для всех потоков ввода-вывода или почти всех.
0
Lexman (Алексей) Full Stack Developer в TrendSoft
12 августа 2022, 20:59полезный
ну банально BufferedWriter. Он в себе содержит буфер, который записывает раз в какое-то время. А раз есть буфер - значит это хранение данных, хоть и временное
+1