C# IWebMessage接口描述
C#語(yǔ)言有很多值得學(xué)習(xí)的地方,這里我們主要介紹C# IWebMessage接口,包括介紹CWorkerThread 的實(shí)現(xiàn)之一是一個(gè)調(diào)用組件方法的類(lèi)等方面。
C# IWebMessage接口
CWorkerThread 的實(shí)現(xiàn)之一是一個(gè)調(diào)用組件方法的類(lèi)。這個(gè)名為CWorkerThreadAssembly 的類(lèi)使用C# IWebMessage接口來(lái)定義服務(wù)和組件之間的約定。
與當(dāng)前版本的 Microsoft Visual Studio?不同,C#接口可以在任何語(yǔ)言中顯式定義,而不需要?jiǎng)?chuàng)建和編譯 IDL文件。C# IWebMessage接口的定義如下:
- public interface IWebMessage
- {
- WebMessageReturn Process(string sMessageLabel, string sMessage
- Body, int iAppSpecific);
- void Release();
- }
ATL 代碼中的 Process 方法是為處理消息而指定的。Process 方法的返回代碼定義為枚舉類(lèi)型WebMessageReturn:
- public enum WebMessageReturn
- {
- ReturnGood,
- ReturnBad,
- ReturnAbort
- }
枚舉的定義如下:Good表示繼續(xù)處理,Bad 表示將消息寫(xiě)入錯(cuò)誤隊(duì)列,Abort 表示終止處理。Release 方法為服務(wù)提供了輕松清除類(lèi)實(shí)例的途徑。因?yàn)閮H在垃圾回收的過(guò)程中才調(diào)用類(lèi)實(shí)例的析構(gòu)函數(shù),所以確保所有占用昂貴資源(例如數(shù)據(jù)庫(kù)連接)的類(lèi)都有一個(gè)能夠在析構(gòu)之前被調(diào)用的方法,用來(lái)釋放這些資源,這是一種非常好的構(gòu)思。
【編輯推薦】


















