Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #39887

Re: Is it possible to send message bursts?

From Andreas Leitgeb <avl@logic.at>
Newsgroups comp.lang.java.programmer
Subject Re: Is it possible to send message bursts?
Date 2023-01-02 19:05 +0000
Organization A noiseless patient Spider
Message-ID <slrntr6aod.pa7s.avl@logic.at> (permalink)
References <7128506e-015c-4992-8ee4-9c62fb2ccc11n@googlegroups.com> <touu1b$9tp$1@gioia.aioe.org>

Show all headers | View raw


Arne Vajhøj <arne@vajhoej.dk> wrote:
> On 1/2/2023 5:10 AM, mike wrote:
>> Problem is when I test this is that I want to send message that first
>> has some data and then no data giving making read() return -1 and
>> then data again. Is it possible to create an inputstream that
>> supports this behaviour?

I'd think it is possible to create a custom InputStream class
that allows reading some bytes, then -1 and lateron some more
bytes, if its read() actually gets called again.

The problem is, that standard-classes like BufferedReaders, or
really any Reader, will just not expect further bytes after 
first EOF.  Those wrappers will just assume that an EOF on 
the stream is final, and not even attempt any further read.

So, if the code (that you want to pass your special stream to) 
relies on wrappers, it just won't work, but if it directly uses
that InputStream and "knows" that -1 isn't final, it might
even work - despite being fragile at best, as any software
implementing undocumented/contradocumented behaviour.


> I don't understand. read() is a blocking method, so if there
> is no input it blocks until there is input. It returns -1
> if end of stream is reached (and stream is then invalid and
> no point in calling read again).

Outside of Java world, if stdin is bound to a terminal, then
receiving an EOF and still being able to read more data till 
next EOF is not quite as bizarre as it might look like to 
Java'ists ;-)

Back to comp.lang.java.programmer | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Is it possible to send message bursts? mike <mikaelpetterson@hotmail.com> - 2023-01-02 02:10 -0800
  Re: Is it possible to send message bursts? Arne Vajhøj <arne@vajhoej.dk> - 2023-01-02 10:42 -0500
    Re: Is it possible to send message bursts? Andreas Leitgeb <avl@logic.at> - 2023-01-02 19:05 +0000
      Re: Is it possible to send message bursts? Andreas Leitgeb <avl@logic.at> - 2023-01-02 19:13 +0000
      Re: Is it possible to send message bursts? Arne Vajhøj <arne@vajhoej.dk> - 2023-01-02 19:27 -0500
  Re: Is it possible to send message bursts? "e.d.pro...@gmail.com" <e.d.programmer@gmail.com> - 2023-01-03 04:07 -0800

csiph-web