共用方式為


Just-In-Time 啟動

COM+ Just-in-Time (JIT) 啟動服務,可提高閒置伺服器資源的生產力。如果設定元件啟動 JIT,COM+ 可在用戶端主動參考物件時,停用它的執行個體 (Instance)。下次用戶端在物件上呼叫方法時,COM+ 不需任何額外的動作即可重新啟動物件給用戶端 Just In Time。

注意 如果設定元件啟動 JIT,則初次建立時就會啟動物件。

當方法呼叫傳回時,COM+ 會停用物件,但是會將內容留在記憶體中。停用的物件會釋放所有資源,包括昂貴資料儲存體上的鎖。

注意 就效能的觀點而言,似乎不宜在 ServicedComponent 衍生類別 (Derived Class) 中實作結束程式,而應該將這個邏輯放入 DisposeObject 方法中。雖然 ServicedComponent Proxy 有結束程式,它在 ServicedComponent 衍生類別上仍使用反映 (Reflection) 來呼叫結束程式。

若要啟用 JIT 啟動,請將 JustInTimeActivationAttribute 屬性套用於從 System.EnterpriseServices.ServicedComponent 衍生而來的類別。此外,為確保方法呼叫傳回時停用物件,請務必設定物件的完成位元。若是交易性元件,您可將 AutoCompleteAttribute 套用於類別,或呼叫 ContextUtil.SetCompleteContextUtil.SetAbort。若是非交易性元件,您可呼叫 ContextUtil.DeactivateOnReturn

注意 自動交易需要 JIT 啟動,因此設定類別自動交易時,會隱含啟用 JIT 啟動。

下列範例會說明如何在 TestObjectPooling 類別的執行個體上啟用 JIT 啟動和停用。

<JustInTimeActivation()> _
Public Class TestObjectPooling 
Inherits ServicedComponent
[C#]
[JustInTimeActivation]
public class TestObjectPooling : ServicedComponent

請參閱

可用的 COM+ 服務摘要 | JustInTimeActivationAttribute | System.EnterpriseServices 命名空間