2010-11-17 38 views

回答

2

CallContext中類似的方法調用線程本地存儲就是一個專門收集對象,並提供特有的每個邏輯數據時隙在其他邏輯線程的調用上下文中不共享對象,當對象向下傳遞並備份執行代碼路徑時,可以將對象添加到CallContext中,並沿路徑上的各種對象檢查對象。對另一個AppDomain中的對象進行遠程方法調用,CallContext類將生成一個LogicalCallContext i與遠程通話一起旅行的情況。只有公開ILogicalThreadAffinative接口並存儲在CallContext中的對象纔會在AppDomain的外部傳播到LogicalCallContext中。不支持此接口的對象不會在具有遠程方法調用的LogicalCallContext實例中傳輸。

這將解決您的疑問:

http://www1.cs.columbia.edu/~lok/csharp/refdocs/System.Runtime.Remoting.Messaging/types/CallContext.html

CallContext vs ThreadStatic