用Duplex实现消息广播
http://blog.csdn.net/fangxinggood/archive/2011/01/15/6142861.aspx
WCF中定義3種消息交換模式: 1. Request/Reply; 2. One-Way; 3. Duplex。??
Request/Reply?是缺省模式,即同步調用。在調用服務方法后需要等待服務的消息返回,即便該方法返回 void 類型。?
One-Way?這種方式在調用方法后會立即返回。需要注意的是 One-Way 不能用在非void,或者包含 out/ref 參數的方法上,會導致拋出 InvalidOperationException 異常。?
Duplex?又稱為雙工通信,實現起來比前兩種來說要稍微復雜些。(1) ServiceContract 中指定 Callback類型; (2) 對于回調操作,指定[OperationContract(IsOneWay=true)] ; (3) 服務契約中通過 OperationContext.Current.GetCallbackChannel 來獲得客戶端 Callback 實例。?
另外,在WCF預定義綁定類型中,WSDualHttpBinding和NetTcpBinding均提供了對雙工通信的支持,但是兩者在對雙工通信的實現機制上卻有本質的區別。WSDualHttpBinding是基于HTTP傳輸協議的;而HTTP協議本身是基于請求-回復的傳輸協議,基于HTTP的通道本質上都是單向的。WSDualHttpBinding實際上創建了兩個通道,一個用于客戶端向服務端的通信,而另一個則用于服務端到客戶端的通信,從而間接地提供了雙工通信的實現。而NetTcpBinding完全基于支持雙工通信的TCP協議。?
轉載于:https://www.cnblogs.com/TivonStone/archive/2011/05/25/2056277.html
總結
以上是生活随笔為你收集整理的用Duplex实现消息广播的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 想在一周内获得五万,不知道大家有没有好的
- 下一篇: 炸羊排怎么做好吃呢?