Currently the windows implementation does not support selecting on pipes and sockets.
I was thinking about this idea to make it work.
Instead of using Select, use WSACreateEvent and WSAEventSelect to assign an event to the socket. Then use WaitOnMultipleObjects to wait on sockets and pipes at the same time.
Has anybody explore this approach?