On Dec 9, 2010, at 9:02 AM, Brian Quinlan wrote:

> 
> On Dec 9, 2010, at 4:26 AM, Thomas Nagy wrote:
> 
>> Hello,
>> 
>> I am looking forward to replacing a piece of code 
>> (http://code.google.com/p/waf/source/browse/trunk/waflib/Runner.py#86) by 
>> the futures module which was announced in python 3.2 beta. I am a bit stuck 
>> with it, so I have a few questions about the futures:
>> 
>> 1. Is the futures API frozen?
> 
> Yes.

Yes, unless the current API is defective in some way.  A beta1 release is a 
chance for everyone to exercise the new API and discover whether it is 
problematic in any real world applications.

> 
>> 2. How hard would it be to return the tasks processed in an output queue to 
>> process/consume the results while they are returned? The code does not seem 
>> to be very open for monkey patching.
> 
> You can associate a callback with a submitted future. That callback could add 
> the future to your queue.

The would be a good example for the docs.

> 
>> 3. How hard would it be to add new tasks dynamically (after a task is 
>> executed) and have the futures object never complete?
> 
> I'm not sure that I understand your question. You can submit new work to an 
> Executor at until time until it is shutdown and a work item can take as long 
> to complete as you want. If you are contemplating tasks that don't complete 
> then maybe you could be better just scheduling a thread.
> 
>> 4. Is there a performance evaluation of the futures code (execution 
>> overhead) ?
> 
> No. Scott Dial did make some performance improvements so he might have a 
> handle on its overhead.

FWIW, the source code is short and readable.  From my quick read, it looks to 
be a relatively thin wrapper/adapter around existing tools.  Most of the work 
still gets done by the threads or processes themselves.  Think of this as a 
cleaner, more centralized API around the current toolset -- there is no deep 
new technology under the hood.

Raymond
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to