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对CSV、Excel、txt、dat文件的处理

python读取txt文件:(思路:先打开文件,读取文件,最后用for循环输出内容) 1、读取 1.1基于python csv库 #3.读取csv至字典x,y import csv...

python和C语言混合编程实例

最近为了测试网速情况怎么样,由于部分业务服务器需要关闭icmp,这样的话采用普通的ping就无法适应我的需求,于是自己简单的写了一个基于tcp端口的ping的程序,由于c执行效率比较的不...

对python 读取线的shp文件实例详解

如下所示: import shapefile sf = shapefile.Reader("E:\\1.2\\cs\\DX_CSL.shp") shapes = sf.shapes(...

Django Admin中增加导出CSV功能过程解析

Django Admin中增加导出CSV功能过程解析

参考 https://books.agiliq.com/projects/django-admin-cookbook/en/latest/export.html 在使用Djan...

Python类的用法实例浅析

本文实例讲述了Python类的用法。分享给大家供大家参考。具体如下: 先看一段代码: #!/usr/bin/env python class Test: def __init__...