------art_3395_12957245.1150842386189
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

>
> >>>
> The problem isn't that rd.gets waits forever - i didn't described my
> problem well enough obviously. The problem is: i get 4 foo!s not one
> more. Not only the main thread blocks at the gets but all other ruby
> threads do also block. This defeats the whole purpose of using a pipe
> in the first place.
> <<<



Yes, this does fail on Windows as written (works fine on Unix), but it has
nothing to do with threads. Take out the thread altogether and it will still
block forever.

Try writing an extension in C and create your descriptors in native Win32
code. Those will definitely work with Ruby on both Windows and Unix (I've
done it). You may have to create two pairs because they will be half-duplex
on Windows.

------art_3395_12957245.1150842386189--