Bill Kelly
3/11/2005 9:04:00 PM
From: "Berger, Daniel" <Daniel.Berger@qwest.com>
> >
> > From: Bill Kelly [mailto:billk@cts.com]
> >
> > I recall reading that an extension was available for
> > win32 to provide nonblocking IO support. I've searched
> > RAA but nothing turned up that sounded quite like what
> > I thought I remembered reading about.
> >
> > Is there such a beast? Does it work with pipes?
>
> It was never released as a separate package on the RAA. It was a patch
> provided by Jean-Francois Nadeau. See ruby-core:3154.
>
> I believe it was merged into CVS already. So, you can either try
> building the latest CVS version, or manually apply that patch and
> rebuild.
Thanks, . . . Hmm, it seems the last message in the thread
is from Jean-Francois, asking, "What's the status of this patch?"
In any case it *appears* to be a patch that works only for
sockets (which is also useful to me) but not for pipes.
Grrrrr.......... DAMN YOU BILL GATES !!!!!!!!! !!!!! !!!!!!!
Uh, anyway.... :-/
There must be *some* way to do a non-blocking pipe read
on windows...??? (I saw Nobu's io-wait module on RAA,
that would add a #ready? method. Even that might help;
although I don't know if io-wait works on Windows or not.
The download link seems to be broken...)
...I guess I can redesign these parts of my app to use
sockets instead of pipes... It seems to be either that
or hire a small army and find a time machine and go back
to 1980 and force M$FT to adopt a non-crappy kernel
design?
BTW - any win32 gurus know if it's *theoretically* possible
to do a non-blocking pipe read, i.e. on file handle returned
by popen(), even if ruby doesn't support it?
Thanks,
Bill