On Mon, Mar 25, 2013 at 11:59 AM, Peter Westlake
<peter.westl...@pobox.com>wrote:

> 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 streaming files, you want something pausable; there are existing
producers which don't use threads, and there will presumably be a tubes
equivalent. Maybe having the tubes one use threads by default is a good
idea.

For getting a file as a string, you can just do:

d = deferToThread(lambda path: FilePath(path).getContent())

For more complex usage patterns, you'll probably want to write custom code
using deferToThread/deferToThreadPool anyway.

-- 
Itamar Turner-Trauring, Future Foundries LLC
http://futurefoundries.com/ — Twisted consulting, training and support.
_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

Reply via email to