From: Dave R. <da...@sy...> - 2002-09-29 18:58:33
|
> "final solution" is a nasty word combination. > > > - an interface to select() > > SOCKET-STATUS Yes. > > - non-blocking sockets > > I can add FIONREAD, FIONWRITE & FIONBIO to SOCKET-OPTIONS. > Would it help? FIONREAD "doubles" the round-trips through the kernel. The first time through you determine how much to read, the second time you actually acquire the data. It's an expensive way to do I/O. I am not aware of an FIONWRITE. FIONBIO is really what is needed. In modern days we typically use O_NONBLOCK. This is an fcntl, not a socket option, btw. > > > - interfaces to partial read()/write() > > partial read is available for buffered streams, I think. > I an add partial write too. I have been working through stream.d and unixaux.d today. I have not yet found code anywhere that handles partial reads or writes in either buffered or unbuffered streams. Where should I be looking? Dave |