On Mar 25, 2013, at 8:59 AM, Peter Westlake <peter.westlake@pobox.com> wrote:
On Wed, Mar 20, 2013, at 9:36, Glyph wrote: ...
Since async file I/O is not a thing you can implement[1], ...
[1]: <http://blog.libtorrent.org/2012/10/asynchronous-disk-io/>
Understood that it isn't possible to use native asynchronous I/O. But an implementation that used threads behind the scenes and returned a Deferred (for small files) or a Protocol (for big ones) would be a nice thing to have.
For what it's worth, I completely agree. If someone has, or someone ever does, implement a nice async file I/O system, a nice abstract API for Twisted to do it would allow us to swap in such a thing and get a performance boost without anyone changing their code. As Itamar says though, a Fount would be an ideal way to present this once I merge the Tubes branch. (It'll be up for review any day now, thanks to all the help I got at PyCon...) -glyph