On 1/2/06, Zoran Vasiljevic <[EMAIL PROTECTED]> wrote:
>
> Am 02.01.2006 um 17:23 schrieb Stephen Deasey:
>
> >> So, what is the problem?
> >
> >
> > http://www.gnu.org/software/libc/manual/html_node/Configuration-of-
> > AIO.html
> >
>
> Still, where is the problem? The fact that Linux implements them as
> userlevel thread does not mean much to me.


If the problem is that threads are too "heavy", then it's pointless to
use aio_write() etc. if the underlying implementation also uses
threads.  It will be worse than using conn threads alone, as there
will be extra context switches as control bounces from driver thread,
to IO thread, back to driver thread, and finally to conn thread.

If what you're saying is Solaris needs it, Linux doesn't matter, well
I don't know about that.

Here's another way to look at it:  We already dedicate a conn thread
for every download.  What's so special about uploads that we can't
also dedicate a thread to them? The threads are long lived, you can
prevent them from running Tcl etc...

Sure, the ideal would be AIO for both uploads and downloads.  But the
io_* API is busted, at least on one major platform, possibly more. 
Have you looked at Darwin, how do they implement it?  What are you
going to do on Windows?

Reply via email to