在觀察者設計模式這種模式中,物件被表示為等待事件觸發的觀察者。 一旦發生指定的事件,觀察者就會關注該主體。 當事件發生時,主體告訴觀察者它已經發生。
以下uml圖表示觀察者模式 -
如何實現觀察者模式?
現在讓我們來看看如何實現觀察者模式。參考以下實現** -
import threading
import time
import pdb
class **********(threading.thread):
def run(self):
print 'downloading'
for i in range(1,5):
self.i = i
time.sleep(2)
print 'unfunf'
return 'hello world'
class worker(threading.thread):
def run(self):
for i in range(1,5):
print 'worker running: %i (%i)' % (i, t.i)
time.sleep(1)
t.join()
print 'done'
t = **********()
t.start()
time.sleep(1)
t1 = worker()
t1.start()
t2 = worker()
t2.start()
t3 = worker()
t3.start()
執行上述程式生成以下輸出 -
解釋說明
¥ 我要打賞
糾錯/補充
收藏加qq群啦,易百教程官方技術學習群
注意:建議每個人選自己的技術方向**,同乙個qq最多限加 3 個群。
python觀察者模式 python 觀察者模式
python 觀察者模式 前言e 寫的倉促就不截uml類圖了,書本chapter10,p313能看到圖 一旦觀察的主題有更新,就會通知到觀察者們,下面的例子是最簡單的乙個觀察者範例,假設這是一群投機分子密切關注 軍 火 倉庫的產品與數量變動 class inventory def init self...
Python設計模式 觀察者模式
基於3.5.2,如下 coding utf 8 觀察者設計模式 class observerinte ce def update self,value raise notimplementederror class nbaperson observerinte ce def init self,na...
python設計模式 觀察者模式
首先先來了解乙個最簡單的觀察者模式,我就拿乙個最經典的例子來解釋 我和小明 觀察者 去訂報 觀察者行為 郵局 被觀察者 有報紙 被觀察者行為 就會通知我和小明 那麼首先來看觀察者的方法吧,觀察者裡面只有乙個介面,就是郵件給我報紙,我就有報紙了,只有這乙個抽象方法has news observerin...