[Twisted-Python] So... Python 3.4 is getting its own async I/O system

Tobias Oberstein tobias.oberstein at tavendo.de
Mon Mar 25 16:11:44 EDT 2013


> > 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.

Yeah, reading a single block from disk can take somewhere between roughly 10us (FusionIO) to 10ms (magnetic platter), and if I need only single blocks (not streaming .. say I access an on-disk key-value store), it would be nice if that would be encapsulated in a deferred, while the reactor drives other stuff. Ideally without a background worker thread pool on platforms that have sufficient/sane support. And worked around via thread pool on others.



More information about the Twisted-Python mailing list