From: Urabe Shyouhei Date: 2011-08-02T08:42:03+09:00 Subject: [ruby-core:38676] Re: [Ruby 1.9 - Bug #5138][Open] Add nonblocking IO that does not use exceptions for EOF and EWOULDBLOCK (08/02/2011 08:35 AM), Eric Wong wrote: > Urabe Shyouhei wrote: >> (08/02/2011 08:14 AM), Eric Wong wrote: >>> Urabe Shyouhei wrote: >>>> So when you do a read loop, nothing bothers you, as long as you use >>>> readpartial. >>> >>> That use of select + readpartial is unsafe. >> >> Unsafe how? readpatial works even without no data on a buffer. > > readpartial will block if there's no data readable, potentially freezing > the whole process. Yes but that's not catastrophic. The peer side is sending a data anyway. Checksum incorrect packets are dropped but retransmitted sooner or later. The process blocks during that retransmission. That won't last so long.