I suspect the thread *does* have a larger cache footprint,
since in nonblocking I/O, session state is stored more compactly.
Also, the threaded approach involves lots more context switches.
> does epoll provide a thunk (callback and state variable) as well as the
> IO completion status?
No. It provides an event record containing a user-defined state pointer
plus the IO readiness status change (different from IO completion status).
But that's what you need; you can do the call yourself.
>>See http://www.kegel.com/c10k.html for an overview of the issue and some links.
>
>
> it's a great resource, except that for 700 clients, the difference
> between select, poll, epoll, aio are pretty moot. no?
Depends on how close to maximal performance you need, and whether
you might later need to scale to more clients.
The average server is so lightly loaded, it really doesn't matter which approach you use.
- Dan
-- Dan Kegel http://www.kegel.com http://counter.li.org/cgi-bin/runscript/display-person.cgi?user=78045- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/