On Sat, Mar 18, 2006 at 11:01:34PM -0800, Allison Randal wrote:

> But, yes, I agree with the principle of not maintaining two  
> completely separate implementations for synchronous and asynchronous  
> ops. The earlier design approached that by having the synchronous ops  
> be asynchronous internally, but my draft suggests this be handled by  
> having the asynchronous ops use the synchronous ops internally.

Is the choice of implementation actually visible to a user of the API?
If "yes", where, and can we avoid it? At which point we have flexibility in
how things are actually implemented.

I can see that emulating asynchronous ops with synchronous ops and POSIX
threads is portable, whereas a platform specific AIO implementation with
synchronous ops implemented atop it is likely to offer higher performance.
If the API is strong enough, would it let us just write the first
implementation, and allow people to write platform specific optimisations
later?

Nicholas Clark

Reply via email to