ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

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

2021-07-22 12:01:46  阅读:193  来源: 互联网

标签:异步 函数 框架 Twisted 99 Deferred 回调


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

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

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

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

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有