【发布时间】:2011-05-31 07:44:18
【问题描述】:
我正在尝试弄清楚如何使用twisted 使我的代码更加异步。
- 函数返回延迟对象
- 然后我添加一个回调列表
- 第一个回调将在延迟函数通过
deferred_obj.callback提供一些结果后调用 - 然后,在回调链中,第一个回调将对数据进行处理并调用第二个回调
- 等等
但是,链式回调不会被视为异步,因为它们是链式的,并且事件循环将继续同时触发它们中的每一个,直到不再有,对吧?
但是,如果我有一个延迟对象,并且我将 deferred_obj.callback 作为其回调附加在d.addCallback(deferred_obj.callback) 中,那么这将被认为是异步的,因为 deferred_obj 正在等待数据,然后将通过的方法数据也在等待数据,但是一旦 d.callback 'd' 对象处理数据然后它调用 deferred_obj.callback 但是由于这个对象是延迟的,与链式回调的情况不同,它将异步执行......正确?
假设我的所有代码都是非阻塞的,这意味着链式回调不是异步的,而链式延迟是异步的,对吗?
【问题讨论】:
-
请把它用在你的文字墙里:
........... -
他的意思是你的问题很难阅读,因为它是一堵文字墙,所以你应该使用更多的空间......
-
他的意思是一般的interpunction。
标签: python asynchronous callback twisted deferred