首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Remoting 基本原理與擴充機制 (下-3):IContextProperty 與 MessageSink 注入機制

     編輯:關於C語言

IContextAttribute:判斷與注入屬性

public bool IsContextOK(Context ctx, IConstructionCallMessage ctorMsg);
public void GetPropertiesForNewContext(IConstructionCallMessage ctorMsg);
  • 任一 IsContextOK 回傳 false → CLR 建立新 Context。
  • 新 Context 中注入屬性,再呼叫各屬性 Freeze、IsNewContextOK。

IContextProperty:屬性與 Sink 注入

public string Name { get; }
public void Freeze(Context ctx);
public bool IsNewContextOK(Context ctx);
  • Context 物件可透過 GetProperty(name) 存取屬性,實現物件間共享資料/服務。
  • 主要用途:向相關區域注入 IMessageSink。

注入流程總結圖

MessageSink 注入流程

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved