From: Robert Klemme Date: 2006-05-21T21:12:40+09:00 Subject: Re: sysread changes behavior in the presence of threads? 2006/5/21, Francis Cianfrocca : > It's a Windows issue, nothing to do with Ruby. I haven't looked at how Boost > implements them, but if I have a chance I will. The problem is with timed > condwaits. As you know Windows uses different synch primitives than Unix. > It's one of those tiny breaches of atomicity that you'll occasionally see if > you run enough trials on a machine with enough multiprocessors. But this does not bite you if you use Ruby's condition variables as they are completely in Ruby land and there are no native threads (well, *one* native thread is there :-)) This whole thread makes me wonder why at all you need to use sysread and a non blocking variant of it. Do you have any extensions that use native threads or what are you trying to accomplish? I'm asking because for me Ruby's threads and blocking IO (on Ruby level) have served me well so far. Kind regards robert -- Have a look: http://www.flickr.com/photos/fussel-foto/