91在线观看视频-91在线观看视频-91在线观看免费视频-91在线观看免费-欧美第二页-欧美第1页

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

python協程之await等待過程理解

冬至配餃子 ? 來源:繆斯之子 ? 作者:肖新苗 ? 2022-08-29 17:08 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

目標

用一個等待過程理解,能夠實現一致的方便,70行代碼

例子說明

某方需要2,執行req2需要執行這個時間,最終執行時間是3秒,大約1秒,同時執行;如果最終時間是秒,如果執行的話,具體請參看,友情提示是,yield from 方法后面如果是它的工具,可以進入____

import time
from collections import deque

_delay = deque()


class FutureX:
def __init__(self, coro=None, delay_second=None):
self.coro = coro
if delay_second:
self.start = delay_second + time.time()

def step(self):
coro = self.coro
try:
result = coro.send(None)
except StopIteration as e:
print(e.value)
pass
else:
if isinstance(result, FutureX):
_delay.append((self._wakeup, result))
else:
pass

def _wakeup(self):
self.step()

def __iter__(self):
yield self
return None


def coroutine(func):
co = func.__code__
func.__code__ = co.replace(co_flags=co.co_flags | 0x100)
return func


@coroutine
def sleep0(seconds):

future = FutureX(delay_second=seconds)
b = yield from future
return seconds


async def req1(delay_seconds):
resp_time = await sleep0(delay_seconds)
return resp_time


async def req2(delay_seconds):
resp_time = await sleep0(delay_seconds)
return resp_time


t1 = time.time()
f1, f2 = FutureX(req1(2)), FutureX(req2(1))
f1.step()

f2.step()


while _delay:
callback, args = _delay.popleft()
start = args.start
if not start:
continue
while True:
end = time.time()
if start <= end:
try:
callback()
except StopIteration as e:
pass
break

print(f'花費的時間:{round(time.time() - t1,1)}')

'''
結果:
2
1
花費的時間:2.0
'''



審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • python
    +關注

    關注

    56

    文章

    4827

    瀏覽量

    86795
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    請問NICE處理器與傳統ocb外設相比的優勢有什么?

    使用擴展指令調用NICE處理器完成預定操作,給出的優勢通常為代替CPU處理數據,但其實使用片上總線掛一個外設,然后驅動外設完成操作也可以實現相同的功能,所以想問一下處理器相比于外設實現還有沒有其它方面的優勢
    發表于 05-29 08:21

    FX2LP如何在不重新插入USB電纜的情況下在dfu過程之后重新啟動設備?

    我正在使用 FX2LP 設備,我想通過將 iic 文件寫入 eeprom 為我的設備添加“設備更新固件”功能。它運行得很好,但我不知道如何在不重新插入 USB 電纜的情況下在 dfu 過程之后重新啟動設備?
    發表于 05-06 06:18

    10分鐘上手寫代碼,LuatOS程輕松掌握!

    10分鐘學會LuatOS程,從此你的程序也能像通勤族利用碎片時間一樣游刃有余。現在就去動手試一試,開啟異步編程新體驗! 寫給第一次聽說程的你?: 別怕!程不是復雜概念,看完這篇,10分鐘就能
    的頭像 發表于 04-10 15:18 ?262次閱讀
    10分鐘上手寫代碼,LuatOS<b class='flag-5'>協</b>程輕松掌握!

    電機沖刺北交所上市

    近日,北交所網站顯示,常州三電機股份有限公司(以下簡稱“三電機”)答復了第二輪問詢函。三電機此前于2023年12月29日IPO申請獲北交所受理。
    的頭像 發表于 03-28 17:53 ?1235次閱讀

    進程、線程、程傻傻分不清?一文帶你徹底扒光它們的\"底褲\"!

    權(yield)實現協作,單線程內玩出多任務的感覺。 技術細節: 程切換成本≈打哈欠(0.1μs~1μs) 阻塞操作會直接讓出CPU(比如等待網絡請求時,自動切換到其他程) 必須依附于線程(就像
    發表于 03-26 09:27

    創建了用于OpenVINO?推理的自定義C++和Python代碼,從C++代碼中獲得的結果與Python代碼不同是為什么?

    創建了用于OpenVINO?推理的自定義 C++ 和 Python* 代碼。 在兩個推理過程中使用相同的圖像和模型。 從 C++ 代碼中獲得的結果與 Python* 代碼不同。
    發表于 03-06 06:22

    Python繪圖Matplotlib快速參考手冊

    ?PYTHON
    發表于 02-07 14:04 ?0次下載

    使用Python實現xgboost教程

    使用Python實現XGBoost模型通常涉及以下幾個步驟:數據準備、模型訓練、模型評估和模型預測。以下是一個詳細的教程,指導你如何在Python中使用XGBoost。 1. 安裝XGBoost
    的頭像 發表于 01-19 11:21 ?1383次閱讀

    使用TMS320C6416處理器:Turbo處理器(TCP)

    電子發燒友網站提供《使用TMS320C6416處理器:Turbo處理器(TCP).pdf》資料免費下載
    發表于 10-23 10:16 ?0次下載
    使用TMS320C6416<b class='flag-5'>協</b>處理器:Turbo<b class='flag-5'>協</b>處理器(TCP)

    使用TMS320C6416處理器:Viterbi處理器(VCP)

    電子發燒友網站提供《使用TMS320C6416處理器:Viterbi處理器(VCP).pdf》資料免費下載
    發表于 10-21 09:36 ?0次下載
    使用TMS320C6416<b class='flag-5'>協</b>處理器:Viterbi<b class='flag-5'>協</b>處理器(VCP)

    如何幫助孩子高效學習Python:開源硬件實踐是最優選擇

    顯著提升孩子的學習興趣和對Python原理的理解。本文將探討為何使用Raspberry Pi(樹莓派)或Unihiker(行空板)等開源硬件是孩子們掌握Python的最佳途徑。 讓孩子們在Py
    的頭像 發表于 09-06 09:49 ?679次閱讀

    晶泰科技與鑫集團簽署戰略合作協議

    近日,在蘇州鑫能源中心,晶泰科技與鑫集團共同見證了雙方戰略合作新篇章的開啟,正式簽署了為期五年的戰略合作協議。此次合作,不僅標志著兩大行業巨頭的強強聯合,更預示著新能源材料研發領域將迎來一場由人工智能與自動化技術引領的深刻變革。
    的頭像 發表于 09-03 14:34 ?824次閱讀

    使用Python進行Ping測試

    )請求包,然后等待目標主機返回響應包,從而測量網絡的延遲和丟包情況。隨著Python編程語言的廣泛應用,越來越多的網絡工程師開始使用Python進行自動化網絡測試和管理任務。本篇文章將詳細介紹如何使用
    的頭像 發表于 08-12 17:56 ?1015次閱讀
    使用<b class='flag-5'>Python</b>進行Ping測試

    pytorch和python的關系是什么

    在當今的人工智能領域,Python已經成為了最受歡迎的編程語言之一。Python的易學易用、豐富的庫和框架以及強大的社區支持,使其成為了數據科學、機器學習和深度學習等領域的首選語言。而在深度學習領域
    的頭像 發表于 08-01 15:27 ?3285次閱讀

    Python建模算法與應用

    Python作為一種功能強大、免費、開源且面向對象的編程語言,在科學計算、數學建模、數據分析等領域展現出了卓越的性能。其簡潔的語法、對動態輸入的支持以及解釋性語言的本質,使得Python在多個平臺
    的頭像 發表于 07-24 10:41 ?1274次閱讀
    主站蜘蛛池模板: 26uuu影院亚洲欧美综合 | 久色乳综合思思在线视频 | 日韩一级一欧美一级国产 | 亚洲综合资源 | 日本免费网站在线观看 | 天堂资源网 | 永久影视| 性瘾高h姚蕊全文免费阅读 性做久久久久 | 欧美区在线 | 男男憋尿play按小腹 | 国产精品久久久久久久久kt | 日本网站免费 | 黄色xxxx| 欧美精品色精品一区二区三区 | 9966国产精品视频 | 欧美日韩一区二区视频图片 | 欧美日韩一区二区三区视视频 | 99 久久99久久精品免观看 | 在线网址你懂的 | 中文字幕一区在线观看视频 | 欧美就是色 | 高清欧美色欧美综合网站 | 加勒比在线一区 | 欧美性aaa| 国产又色又爽又黄的网站在线一级 | 欧美日韩一日韩一线不卡 | 波多野结衣久久精品 | 黄网站免费视频 | 欧美一区亚洲二区 | 亚洲精品一线二线三线 | 成人在线免费电影 | 又黄又爽的成人免费网站 | 2019天天干天天操 | 久草资源网 | 性欧美视频在线观看 | 天天狠天天天天透在线 | 九九国产精品视频 | 婷婷 综合网站 | 四虎8848精品永久在线观看 | 亚洲欧美成人 | 天堂中文在线www |