成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

P2PMessageQueue的外部特征與設計理念

開發 后端
本文介紹P2PMessageQueue的外部特征和設計理念。

P2PMessageQueue

確定 P2PMessageQueue 的公共接口的最佳方式是使用類。IntelliSense 將顯示每個方法和每個參數的描述性幫助信息。以下幾個段落將概述 P2PMessageQueue 接口。

圖 1 顯示該類的統一建模語言 (UML) 表示形式(以及它的兩個依賴項:Message 類和 ReadWriteResult 枚舉)。

 顯示以下三種類型的類關系圖: P2PmessageQueue 、 Message 和 ReadWriteResult

圖 1. 顯示以下三種類型的類關系圖: P2PmessageQueue 、 Message 和 ReadWriteResult 。

如果您偏愛描述性信息較少的 Object Browser 屏幕快照(但對于某些人來說可能更為熟悉),請參見圖 2。

 顯示這三種類型的 Visual Studio Object Browser

圖 2. 顯示這三種類型的 Visual Studio Object Browser 。

請注意尚未討論的項以及 UML 關系圖中未顯示的項。

添加了 DataOnQueueChanged 事件。正如您將看到的那樣,在沒有該事件的情況下,P2PMessageQueue 類仍然可用,但是當只讀隊列非空并且只寫隊列未滿時,該增強功能將通知客戶端。在內部,將阻塞等待隊列句柄的線程,并在句柄收到信號時激發該事件,這就避免了錯誤的發生。(請參見代碼以獲取詳細信息。)請注意,該事件不 在 UI 線程上,因此您需要使用 Control.Invoke。如果查看代碼,您還將看到在調用 Close 方法時,該線程是如何完全關閉的,這正是 .NET Compact Framework 版本 1.0 的線程所需要的。.NET Compact Framework 版本 1.0 中的 Thread 類不提供 IsBackground 屬性或 Abort 方法;因此,必須確保應用程序提供必需的代碼來完全終止該應用程序啟動的所有線程。如果不提供該代碼,則運行應用程序的進程很可能無法終止,因為運行中的 .NET Compact Framework 1.0 線程會保持該進程運行,即使主應用程序線程嘗試退出也是如此。

此外,如果查看該實現會發現兩個受保護的虛擬方法。

  1. # void StartEventThread()  
  2. # Int32 GetBehaviourFlag()  

如果不需要啟動事件線程,則可以用一個空方法重寫第一個方法。不啟動事件線程是一個非常規方案(因為無法直接訂閱該事件),但是的確存在該選項。第二個方法返回傳入到 CreateMsgQueue 方法的標志 (MSGQUEUOPTIONS.dwFlags) 中使用的整型參數。MSGQUEUE_ALLOW_BROKEN 的默認設置很不錯,但是如果要更改它(例如,更改為 0 或 MSGQUEUE_NOPRECOMMIT),則重寫 GetBehaviorFlag 是最好的做法。

現在您應該已經十分了解 P2PMessageQueue類的外部特征,以及為什么以這種方式設計。

【編輯推薦】

  1. 點對點消息隊列函數:用于WinCE的IPC機制
  2. ASP.NET中無Cookie會話的優點與缺點
  3. 無Cookie會話的實現
  4. ASP.NET Cookie:不是問題的問題
  5. .NET框架中的XML:XmlSerializer的內部原理
責任編輯:yangsai 來源: MSDN
相關推薦

2009-08-06 17:14:39

P2PMessageQ

2009-05-18 09:11:00

IPTV融合寬帶

2013-09-22 16:30:13

扁平化UI設計

2011-03-31 16:04:18

iPhoneTwitter

2010-06-11 14:55:20

2024-06-17 12:28:52

2009-07-15 15:47:12

JDBC DAO

2010-03-02 16:34:06

Android平臺

2011-09-05 10:18:21

Windows 8Mac OS

2010-03-22 15:27:40

云計算

2010-12-16 09:07:36

2010-09-28 11:05:49

jQuery

2020-11-23 14:56:36

Eureka

2020-10-09 09:21:45

鴻蒙

2010-11-09 09:43:22

UI設計Windows Pho

2011-11-23 15:07:00

社交媒體IBM營銷

2015-08-25 11:25:44

CRM

2023-08-30 15:53:10

DevOps軟件開發

2010-06-11 10:19:22

systemd
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产极品粉嫩美女呻吟在线看人 | 日韩一区av | 毛片一区二区 | 亚洲视频一区 | 国产高清一区二区 | 日韩中文不卡 | 国产精品免费观看 | 久久狠狠 | 日韩国产精品一区二区三区 | 精品视频在线播放 | 国产电影一区二区 | 久久久123 | 欧美国产日韩在线观看成人 | 成人a免费 | 国产日韩一区二区三免费 | 久久精品国产久精国产 | 国产精品久久久久久福利一牛影视 | 久久久久久国产精品免费免费狐狸 | 欧美一级电影免费 | 久久免费精品 | 亚洲精品一 | 国产精品久久久久久久粉嫩 | 久久国产精品亚洲 | 国产在线第一页 | 国产高清在线精品 | 午夜在线观看视频 | 在线免费小视频 | 中文在线视频 | 久久精品国产久精国产 | 婷婷99 | 99精品欧美一区二区三区综合在线 | 一区二区三区播放 | 国产精品国产亚洲精品看不卡15 | 国产乱肥老妇国产一区二 | 久久人| av黄色在线 | 51ⅴ精品国产91久久久久久 | 欧美成人猛片aaaaaaa | 91社区在线高清 | 在线91 | 免费看黄色国产 |