[svn r125] Introduce new CoroutinePool methods: wait_all() to wait until all coroutines launched with either execute() or execute_async() have completed. launch_all() to execute_async() a given function with each of a sequence of sets of arguments. process_all(), shorthand for launch_all() followed by wait_all(). Introduce metaphore, a sort of inverse semaphore on which wait_all() is implemented.
[svn r125] Introduce new CoroutinePool methods:
wait_all() to wait until all coroutines launched with either execute() or
execute_async() have completed.
launch_all() to execute_async() a given function with each of a sequence of
sets of arguments.
process_all(), shorthand for launch_all() followed by wait_all().
Introduce metaphore, a sort of inverse semaphore on which wait_all() is
implemented.

lindenlab/eventlet,tempbottle/eventlet,lindenlab/eventlet,collinstocks/eventlet,tempbottle/eventlet,lindenlab/eventlet,collinstocks/eventlet