python中利用await关键字如何等待Future对象完成详解

yipeiwu_com6年前Python基础

前言

本文主要给大家介绍了关于python用await关键字等待Future对象完成的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。

在下面的例子里,演示了怎么样使用await来等Future对象设置结果完成

示例代码如下:

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

输出结果如下:

scheduling mark_done
setting future result to 'the result'
returned result: 'the result'

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python操作CouchDB数据库简单示例

安装python couchDb库: https://pypi.python.org/pypi/CouchDB/0.10 连接服务器 复制代码 代码如下: >>> im...

Python快速从注释生成文档的方法

Python快速从注释生成文档的方法

作为一个标准的程序猿,为程序编写说明文档是一步必不可少的工作,如何才能写的又好又快呢,下面我们就来详细探讨下吧。 今天将告诉大家一个简单平时只要注意的小细节,就可以轻松生成注释文档,也可...

python配置文件写入过程详解

python配置文件有.conf,.ini,.txt等多种 python集成的 标准库的 ConfigParser 模块提供一套 API 来读取和操作配置文件 我的配置文件如下 [M...

python中stdout输出不缓存的设置方法

考虑以下python程序:复制代码 代码如下:#!/usr/bin/env pythonimport syssys.stdout.write("stdout1 ")sys.stderr....

Pyinstaller 打包exe教程及问题解决

安装 pip insatll Pyinstaller 参数 pyinstaller -Fw main.py 参数 概述...