python中利用await關鍵字如何等待Future對象完成詳解
更新時間:2017年09月07日 10:45:32 作者:caimouse
為了簡化并更好地標識異步IO,從Python 3.5開始引入了新的語法async和await,可以讓coroutine的代碼更簡潔易讀。下面這篇文章主要給大家介紹了關于python中利用await關鍵字如何等待Future對象完成的相關資料,需要的朋友可以參考下。
前言
本文主要給大家介紹了關于python用await關鍵字等待Future對象完成的相關內(nèi)容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。
在下面的例子里,演示了怎么樣使用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'
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
使用python采集腳本之家電子書資源并自動下載到本地的實例腳本
這篇文章主要介紹了python采集jb51電子書資源并自動下載到本地實例教程,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-10-10
python 實現(xiàn)12bit灰度圖像映射到8bit顯示的方法
這篇文章主要介紹了python 實現(xiàn)12bit灰度圖像映射到8bit顯示的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07
詳解如何在ChatGPT內(nèi)構建一個Python解釋器
這篇文章主要為大家詳細介紹了如何在ChatGPT內(nèi)構建一個Python解釋器,文中的示例代碼講解詳細,具有一定的學習價值,需要的可以參考一下2023-02-02
Python Tornado框架輕松寫一個Web應用的全過程
Tornado全稱Tornado Web Server,是一個用Python語言寫成的Web服務器兼Web應用框架,Tornado走的是少而精的方向,注重的是性能優(yōu)越,它最出名的是異步非阻塞的服務器方式,這篇文章主要給大家介紹了關于Python Tornado框架輕松寫一個Web應用的相關資料,需要的朋友可以參考下2021-08-08

