Twisted DeferredList用法
DeferredList 有时候,你想等所有的事件都发生后通知你,而不是每一个都通知一下。比如,你想等待在在一个列表里的所有连接都关闭后通知你,twisted.internet.defer.DeferredList 能够完成你想要的功能。 为了创建一个DeferredList从多个Deferreds,你只需要简单的传递一个列表就可以了: #Create a DeferredList dl = defer.DeferredList([deferred1, deferred2, deferred3]) 你可以把这个DeferredList当做一个原生的Deferred;你能够调用 addCallbacks等.DeferredList将调用它的callback当所有的deferreds完成的时候 例子 from twisted.internet import defer def printResult(result): for (success, value) in result: if success: print 'Success', value else: print 'Failure', value.getErrorMessage() deferred1 = defer.Deferred() deferred2 = defer.Deferred() deferred3 =