Messages in this thread | ![/](/images/icornerl.gif) | | Date | Fri, 27 Oct 2000 17:20:06 +0200 | From | Jamie Lokier <> | Subject | Re: kqueue microbenchmark results |
| |
Alfred Perlstein wrote: > > If a programmer does not ever wish to block under any circumstances, it's > > his obligation to communicate this desire to the implementation. Otherwise, > > the implementation can block if it doesn't have data or an error available > > at the instant 'read' is called, regardless of what it may have known or > > done in the past. > > Yes, and as you mentioned, it was _bugs_ in the operating system > that did this.
Not for writes. POLLOUT may be returned when the kernel thinks you have enough memory to do a write, but someone else may allocate memory before you call write(). Or does POLLOUT not work this way?
For read, you still want to declare the sockets non-blocking so your code is robust on _other_ operating systems. It's pretty straightforward.
-- Jamie - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |