7
A
回答
3
從MSDN: -
的TransparentProxy是不能更換或 擴展的內部類。另一方面,RealProxy和ObjRef類是公開的,並且可以在必要時擴展和定製。 RealProxy類是例如執行負載平衡的理想候選者,因爲它處理遠程對象上的所有函數調用。 當調用Invoke時,從RealProxy派生的類可以獲取有關網絡中服務器的負載信息,並將呼叫路由到適當的服務器 。只需從Channel中請求所需 ObjectURI的MessageSink,然後調用SyncProcessMessage或 AsyncProcessMessage將呼叫轉發到所需的遠程對象。 當呼叫返回時,RealProxy自動處理返回 參數。
下面是一段代碼片斷,演示瞭如何使用派生的RealProxy類。
MyRealProxy proxy = new MyRealProxy(typeof(Foo));
Foo obj = (Foo)proxy.GetTransparentProxy();
int result = obj.CallSomeMethod();
的TransparentProxy上述得到可以被轉發到另一 應用程序域。當第二個客戶端嘗試調用代理上的方法 時,遠程處理框架將嘗試創建MyRealProxy的實例,並且如果程序集可用,則所有調用 都將通過此實例進行路由。如果程序集不是 可用,則呼叫將通過RealProxy的默認遠程處理 進行路由。
ObjRef可以通過提供 默認ObjRef屬性TypeInfo,EnvoyInfo和ChannelInfo來替代。以下代碼顯示如何完成此操作。
public class ObjRef {
public virtual IRemotingTypeInfo TypeInfo
{
get { return typeInfo;}
set { typeInfo = value;}
}
public virtual IEnvoyInfo EnvoyInfo
{
get { return envoyInfo;}
set { envoyInfo = value;}
}
public virtual IChannelInfo ChannelInfo
{
get { return channelInfo;}
set { channelInfo = value;}
}
}
-1
在谷歌一個簡單的搜索產生太多有趣的內容包括MSDN文章:http://msdn.microsoft.com/en-us/library/ms973857.aspx
相關問題
- 1. 什麼是「不透明」鍵?
- 2. 什麼是真正的pymc
- 3. 真正的1NF是什麼?
- 4. 真正的PNG是什麼?
- 5. Haskell中的透明代理
- 6. 什麼是不透明的字段?
- 7. 什麼是透明邊框的CSS?
- 8. 爲什麼填充0xFFFFFFFF是透明的?
- 9. 什麼是透明的使用?
- 10. 如何使PictureBox真正透明
- 11. 什麼是nonetype?真的不明白
- 12. CSS3線性漸變+ RGBA,沒那麼真正的透明
- 13. C#中透明類或透明方法是什麼?
- 14. 魷魚透明代理
- 15. CSS盒子陰影不是真正透明的?
- 16. Swing中的真實透明
- 17. 背景是什麼:透明url();做?
- 18. application.ini的真正目的是什麼
- 19. 真正的ruby的StringIO類是什麼?
- 20. 是否可以通過imagettftext和imagecolortransparent獲得真正的透明度?
- 21. 數據說明,爲什麼布爾總是prop.IsRequired等於真正
- 22. 順差是透明,同時使用PNG透明和不透明
- 23. 需要透明類型的好處和情況是什麼?
- 24. PHP memcached,真正的特權是什麼?
- 25. 什麼是真正的數組條件
- 26. Tuple的真正用途是什麼?
- 27. EditorReuseAttribute的真正用途是什麼?
- 28. ExpandoObject的真正優點是什麼?
- 29. LIFO的真正含義是什麼?
- 30. Collections.synchronizedList/synchronizedMap的真正價值是什麼?
謝謝Roy Dictus! – Saveen
爲什麼這個答案downvoted? –
因爲這是一個鏈接唯一的答案 – jValdron