基於事件的程式設計思想

2021-10-05 18:41:34 字數 850 閱讀 5610

緒論:

我們所說的事件程式設計思想可以理解為生活中處理事件的一套機制。我和身邊的人說過無數次,計算機程式設計不是一門手藝或是單純的一門技術;不是理髮店理髮師那樣單純的理髮技術;也不是工地綁鋼筋那樣依靠刻意訓練就能達到的一門技術活兒;不是習武愛好者,不是賣油翁裡的唯手熟爾就能到達的絕技

我們把這次新冠疫情成為乙個事件。疫情的發生稱為:事件源。我們的有關部門得到訊息之後向上級反饋稱為:偵聽器。我們把上級得知此訊息後做出的迅速反應稱為:事件處理程式。我的這個舉例應該是非常大白話了,那麼從中總結得到,我們的事件處理系統分為:

事件源偵聽器

事件處理程式

方便程式設計師理解的術語:

事件源就是你在碼**的時候定義的有關物件,這個物件準備呼叫某某函式用的;偵聽器是接收到事件訊息的物件呼叫某函式的時候,這個行為訊息提前會被偵聽器獲知,windows系統提供了基本的事件監聽服務;事件處理程式就是你物件呼叫的那個函式和方法,當然同時包括了物件,這個時候的這個物件我們又叫做事件的訂閱者

事件處理程式+事件源物件=事件的繫結

基於事件的非同步程式設計

基於事件的非同步模式具有多執行緒應用程式的優點,同時隱藏了多執行緒設計中固有的許多複雜問題。使用支援此模式的類,你將能夠 同時執行多個操作,每個操作完成時都會接到通知。等待資源變得可用,但不會停止 阻止 你的應用程式。使用熟悉的事件和委託模型與掛起的非同步操作通訊。支援基於事件的非同步模式的類將具有...

基於事件的非同步程式設計模式

public class backgroundworker component 通常的使用方法如下 在dowork中新增乙個事件處理程式,在該事件處理程式中呼叫耗時的操作 呼叫 runworkerasync啟動才操作。如果想要得到當前的更新進度,在progresschanged事件處理程式中處理,如...

基於事件的非同步程式設計模式

public class backgroundworker component 通常的使用方法如下 在dowork中新增乙個事件處理程式,在該事件處理程式中呼叫耗時的操作 呼叫 runworkerasync啟動才操作。如果想要得到當前的更新進度,在progresschanged事件處理程式中處理,如...