6213702: (so) non-blocking sockets with TCP urgent disabled get still selected for read ops (win)

Chris Hegarty chris.hegarty at oracle.com
Mon Jun 28 03:54:38 PDT 2010


On 06/28/10 11:27 AM, Michael McMahon wrote:
> Alan Bateman wrote:
>> The Windows Selector uses select and wakes up if there is OOB data
>> available for reading on one of the sockets. When the OOBINLINE option
>> is disabled (the default and usual case) then it can be lead to
>> Selector spin or read returning 0 when there isn't any (normal) data
>> to read. To address this, we need to read and discard the OOB data so
>> that it doesn't cause the channel to be selected (and allow subsequent
>> selects to block). The webrev with the changes is here:
>> http://cr.openjdk.java.net/~alanb/6213702/webrev/
>>
>> Thanks,
>> Alan.
>>
>>
> looks good to me.

Same here, changes look fine.

-Chris.

>
> - Michael.


More information about the nio-dev mailing list