python中利用Future对象异步返回结果示例代码


Posted in Python onSeptember 07, 2017

前言

本文主要给大家介绍了关于python中用Future对象异步返回结果的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

一个Future是用来表示将来要完成的结果,异步循环可以自动完成对这种对象的状态触发。

例子如下:

import asyncio 
 
 
def mark_done(future, result): 
 print('setting future result to {!r}'.format(result)) 
 future.set_result(result) 
 
 
event_loop = asyncio.get_event_loop() 
try: 
 all_done = asyncio.Future() 
 
 print('scheduling mark_done') 
 event_loop.call_soon(mark_done, all_done, 'the result') 
 
 print('entering event loop') 
 result = event_loop.run_until_complete(all_done) 
 print('returned result: {!r}'.format(result)) 
finally: 
 print('closing event loop') 
 event_loop.close() 
 
print('future result: {!r}'.format(all_done.result()))

输出结果如下:

scheduling mark_done
entering event loop
setting future result to 'the result'
returned result: 'the result'
closing event loop
future result: 'the result'

在这个例子里,并没有调用return语句,但也可以生成一个结果返回。Future的使用跟协程使用是一样的。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Python 相关文章推荐
pip安装时ReadTimeoutError的解决方法
Jun 12 Python
python中单下划线_的常见用法总结
Jul 10 Python
python中cPickle类使用方法详解
Aug 27 Python
对Python 3.5拼接列表的新语法详解
Nov 08 Python
python判断一个数是否能被另一个整数整除的实例
Dec 12 Python
Python 实现文件打包、上传与校验的方法
Feb 13 Python
python频繁写入文件时提速的方法
Jun 26 Python
python修改FTP服务器上的文件名
Sep 11 Python
Python命令行参数解析工具 docopt 安装和应用过程详解
Sep 26 Python
浅谈pandas.cut与pandas.qcut的使用方法及区别
Mar 03 Python
Python字典dict常用方法函数实例
Nov 09 Python
详解Python GUI编程之PyQt5入门到实战
Dec 10 Python
python中利用Future对象回调别的函数示例代码
Sep 07 #Python
Python标准库之itertools库的使用方法
Sep 07 #Python
在Python的一段程序中如何使用多次事件循环详解
Sep 07 #Python
教你学会使用Python正则表达式
Sep 07 #Python
Python基础学习之常见的内建函数整理
Sep 06 #Python
Python升级导致yum、pip报错的解决方法
Sep 06 #Python
Python实现求两个csv文件交集的方法
Sep 06 #Python
You might like
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
Smarty使用自定义资源的方法
2015/08/08 PHP
Laravel框架实现即点即改功能的方法分析
2019/10/31 PHP
Centos7安装swoole扩展操作示例
2020/03/26 PHP
High Performance JavaScript(高性能JavaScript)读书笔记分析
2011/05/05 Javascript
js中AppendChild与insertBefore的用法详细解析
2013/12/16 Javascript
JS的get和set使用示例
2014/02/20 Javascript
node.js中的fs.readdirSync方法使用说明
2014/12/17 Javascript
实例详解Nodejs 保存 payload 发送过来的文件
2016/01/14 NodeJs
微信小程序 toast 详解及实例代码
2016/11/09 Javascript
js中动态创建json,动态为json添加属性、属性值的实例
2016/12/02 Javascript
原生js实现可拖拽效果
2017/02/28 Javascript
微信小程序商城项目之淘宝分类入口(2)
2017/04/17 Javascript
vue axios登录请求拦截器
2018/04/02 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
vue-自定义组件传值的实例讲解
2018/09/18 Javascript
vue双向绑定数据限制长度的方法
2019/11/04 Javascript
ES5新增数组的实现方法
2020/05/12 Javascript
[01:15:45]DOTA2上海特级锦标赛B组小组赛#1 Alliance VS Spirit第一局
2016/02/26 DOTA
Python深入学习之对象的属性
2014/08/31 Python
使用python遍历指定城市的一周气温
2017/03/31 Python
Django使用Celery异步任务队列的使用
2018/03/13 Python
Python3 itchat实现微信定时发送群消息的实例代码
2019/07/12 Python
python 叠加等边三角形的绘制的实现
2019/08/14 Python
Pycharm 设置默认解释器路径和编码格式的操作
2021/02/05 Python
CSS3 选择器 伪类选择器介绍
2012/01/21 HTML / CSS
澳大利亚自然和有机的健康美容产品一站式商店:Ziani Beauty
2017/12/28 全球购物
Clarria化妆品官方网站:购买天然和有机化妆品系列
2018/04/08 全球购物
节省高达65%的城市景点费用:Go City
2019/07/06 全球购物
年终考核评语
2014/01/19 职场文书
公司员工检讨书
2014/02/08 职场文书
电话客服专员岗位职责
2014/06/28 职场文书
六一亲子活动感想
2015/08/07 职场文书
初中班主任心得体会
2016/01/07 职场文书
幼儿园教师辞职信
2019/06/21 职场文书
MySQL RC事务隔离的实现
2022/03/31 MySQL