這篇文章主要給大家介紹了關於python中實現延時回調普通函數的相關資料,文中透過範例程式碼介紹的非常詳細,對大家的學習或工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。
前言
回呼函數是我們在python程式設計中常會遇到的問題,而想在將來某一時刻進行函數回調,可以使用call_later()
函數來實現,第一個參數是回呼叫延時,第二個是回調的函數名稱
範例如下:
import asyncio def callback(n): print('callback {} invoked'.format(n)) async def main(loop): print('registering callbacks') loop.call_later(0.2, callback, 1) loop.call_later(0.1, callback, 2) loop.call_soon(callback, 3) await asyncio.sleep(0.4) event_loop = asyncio.get_event_loop() try: print('entering event loop') event_loop.run_until_complete(main(event_loop)) finally: print('closing event loop') event_loop.close()
結果輸出如下:
##
entering event loop registering callbacks callback 3 invoked callback 2 invoked callback 1 invoked closing event loop在這個例子裡,同時呼叫的三個函數,會發現呼叫順序不一樣。
call_soon()是註冊之後立即呼叫。
以上是詳解python中實現延時回調普通函數的詳細內容。更多資訊請關注PHP中文網其他相關文章!