本文實例講述了python回調(diào)函數(shù)用法。分享給大家供大家參考。具體分析如下:
軟件模塊之間總是存在著一定的接口,從調(diào)用方式上,可以把他們分為三類:同步調(diào)用、回調(diào)和異步調(diào)用。同步調(diào)用是一種阻塞式調(diào)用,調(diào)用方要等待對方執(zhí)行完畢 才返回,它是一種單向調(diào)用;回調(diào)是一種雙向調(diào)用模式,也就是說,被調(diào)用方在接口被調(diào)用時也會調(diào)用對方的接口;異步調(diào)用是一種類似消息或事件的機制,不過它 的調(diào)用方向剛好相反,接口的服務(wù)在收到某種訊息或發(fā)生某種事件時,會主動通知客戶方(即調(diào)用客戶方的接口)。回調(diào)和異步調(diào)用的關(guān)系非常緊密,通常我們使用 回調(diào)來實現(xiàn)異步消息的注冊,通過異步調(diào)用來實現(xiàn)消息的通知。同步調(diào)用是三者當中最簡單的,而回調(diào)又常常是異步調(diào)用的基礎(chǔ),因此,這里我們著重討論回調(diào)機制 在不同軟件架構(gòu)中的實現(xiàn)。
#call.pyimport calleddef callback(): print "in callback"def main(): #called.test() called.test_call(callback) print "in call.py" main()#called.py'''''def test(): print "in called.py test()"'''def test_call(p_call): print "in called.py test_call()" p_call()joe@joe:~/test/python$ python call.pyin called.py test_call()in callbackin call.pyjoe@joe:~/test/python$
希望本文所述對大家的Python程序設(shè)計有所幫助。
新聞熱點
疑難解答
圖片精選