您好,登錄后才能下訂單哦!
這篇文章主要介紹python實現異步調用函數執行的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
在實現異步調用之前我們先進行什么是同步調用和異步調用
同步:是指完成事務的邏輯,先執行第一個事務,如果阻塞了,會一直等待,直到這個事務完成,再執行第二個事務,順序執行
異步:是和同步相對的,異步是指在處理調用這個事務的之后,不會等待這個事務的處理結果,直接處理第二個事務去了,通過狀態、通知、回調來通知調用者處理結果
分析一下,下面的例子:
定義了一個裝飾器 async 和 A 、B 兩個function 函數
A 里面sleep 10s , 然后打印 a function 字符串
B 里面直接打印 b function 字符串
我們順序調用兩個功能:
A()
B( )
由于函數A在睡的狀態,我們又不希望程序被阻塞在函數A的睡的狀態,所以我們采用異步執行,即在函數A睡的狀態,讓其他的任務執行
from threading import Thread from time import sleep def async(f): def wrapper(*args, **kwargs): thr = Thread(target=f, args=args, kwargs=kwargs) thr.start() return wrapper @async def A(): sleep(10) print("函數A睡了十秒鐘。。。。。。") print("a function") def B(): print("b function") A() B()
執行結果:
#b function #函數A睡了十秒鐘。。。。。。 #a function
以上是“python實現異步調用函數執行的方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。