twisted.internet.defer.Deferred是Twisted异步编程的一个关键对象,理解它才能更好地使用Twisted.
Deferred类似于tornado中Future(python中已经加入Future)的概念,都可以看作是一个异步执行体的封装,对需要异步执行的代码的执行和结果通知等进行了封装,从使用上看,似乎tornado的更容易,抽象度也更高一些。
这篇文章介绍Deferred对象的特性,当函数返回Deferred对象时,你有很多种方式来使用它们。
我将会假设你对Twisted框架的基本编程模型已经比较熟悉了,比如:异步,基于回调的编程,而不是在你的程序里编写会阻塞的代码,或者通过线程的方式执行需要阻塞的代码,
需要阻塞的函数直接返回,然后当数据可用时(异步代码完成时)执行一系列的回调函数。
通过学习这篇教程,你将能够使用Twisted中更多简单的API,也将能够理解使用Twisted