I've found that it isn't possible to do non-blocking IO using IO::Handles returned from IPC::Open3 on Windows. Specifically, neither invoking the blocking() method on the handles nor invoking ioctl() in the manner described in many places on this list (including http://aspn.activestate.com/ASPN/Mail/Message/2069834) allow me to use select() or sysread() to read from the handle without blocking.
It is, however, possible to do non-blocking IO using a filehandle opened using open() for unidirectional IPC.
Several posts on this list (including http://aspn.activestate.com/ASPN/Mail/Message/1445038) explain that non-blocking IO is only possible from sockets (not file handles) on Win32. What is the difference between the way IPC::Open3 and open() connect to the external process that allows the latter to work in a non-blocking manner, but the former not to?
Thanks in advance for any help.
_______________________________________________ ActivePerl mailing list [EMAIL PROTECTED] To unsubscribe: http://listserv.ActiveState.com/mailman/mysubs
