其他分享
首页 > 其他分享> > 爬虫日记(99):Twisted的Deferred重新审视

爬虫日记(99):Twisted的Deferred重新审视

作者:互联网

在前面的例子可以看到,回调函数是事件循环框架异步编程的基本方式,只有使用回调函数才能把用户的代码,插入到框架的事件循环里运行,这是所有事件循环框架的基本要求,也是它的基本内容,因此Twisted框架也不例外,它的基本开发方式就是编写一串又一串的回调函数链,让整个回调管理更加方便。

由前面的例子来看,最简单的回调处理,就有两个回调函数:一个是正常的回调,一个是错误的回调。我们要成为Twisted的开发人员,就要思考怎么样让这些回调函数更加容易管理,避免一些陷阱。

Twisted为了管理回调函数方便,添加了一个叫做Deferred类,这个类定义在twisted.internet.defer里。当创建一个Deferred类对象时,这个对象就包含两条回调链,一条是正常的回调链,一条是异步的回调链。我们可以往这两条链里添加任意个回调函数,然后可以通过这个对象设置为那一种结果的回调,如果是正常结果就调用正常回调链的函数,如果是异常结果,就回调异常回调的函数。

标签:异步,函数,框架,Twisted,99,Deferred,回调
来源: https://blog.csdn.net/caimouse/article/details/118995692