 <p>I use this code (<em>implmented before I learned about ndb tasklets</em>):</p> <pre><code> while rpcs: rpc = UserRPC.wait_any(rpcs) result = rpc.get_result() # process result here rpcs.remove(rpc) </code></pre>