Socket InputStream.available may return a positive value after shutdown
Jing LV
lvjing at linux.vnet.ibm.com
Mon Jul 18 01:09:20 PDT 2011
Hi Chris, Alan,
Thanks for reply. I am looking for a conclusion and solution for
this issue. If I understand correctly, it'd fix the spec rather than fix
the code?
于 2011-7-14 17:00, Chris Hegarty 写道:
> On 07/14/11 09:36 AM, Alan Bateman wrote:
>> Chris Hegarty wrote:
>>> :
>>>
>>> I can't see that anyone could be depending on the fact the available()
>>> would return > 0 after shutdownInput(), given that subsequent reads
>>> will always return -1. I just can't see why anyone would require this,
>>> but maybe I'm missing something.
>> You're probably right, and it's just the concern that there may be code
>> that won't now read and see the end-of-stream. The other concern is that
>
> Yes, interesting point. I think this may be less of a concern though.
> Can anyone even depend on this today, i.e. use available to determine
> when to read and expect to reach eof? I don't think so because they
> may just happen to read the exact amount of data being sent and
> available will always return 0.
>
> Also, it does seems unlikely that this change would surprise too may
> people, they are calling shutdownInput explicitly on the socket.
>
> Let me put together a webrev and see the extent of the changes.
>
> -Chris.
>
>> we don't know how custom SocketImpls might behave. Overall the risk does
>> seem low.
>>
>> -Alan.
--
Best Regards,
Jimmy, Jing LV
More information about the net-dev
mailing list