共用方式為


IObjectControl::D eactivate 方法 (comsvcs.h)

可讓 COM+ 物件在回收或終結之前執行必要的清除。

每當停用物件時,COM+ 執行時間環境就會呼叫此方法。 請勿從這個方法對相同活動中的物件進行任何方法呼叫。

語法

void Deactivate();

傳回值

沒有

言論

每當停用支援 IObjectControl 介面的物件時,COM+ 運行時間環境會呼叫 Deactivate 方法。 當物件從方法傳回時,會在方法傳回時,該方法會呼叫 setCompleteSetAbort、認可或中止的交易,或當最後一個用戶端在物件上保留參考時,就會停用物件。

如果元件支援回收 TRUE 則您必須使用 Deactivate 方法,將物件的狀態重設為 Activate 方法預期找到它的狀態。 您也可以使用 Deactivate 方法來釋放物件的內容,或執行其他內容特定的清除。 即使物件支援回收,在 Deactivate 方法中釋放某些可重複使用的資源也很有説明。 例如,ODBC 提供自己的連接共用。 在一般連接集區中,將資料庫連接集區集區更有效率,因為其他物件可以使用資料庫連接,而不是將它系結至物件集區中的特定物件。

COM+ 明確禁止呼叫物件,該物件會在停用方法傳回之後公開 IObjectControl(當它位於解構函式中時)。 這類呼叫會導致RPC_E_DISCONNECTED錯誤。 例如,如果對象已經傳出本身的參考,然後在傳回 Deactivate 之後,回呼物件,則會導致中斷連線的錯誤結果。

要求

要求 價值
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
支援的最低伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平臺 窗戶
標頭 comsvcs.h

另請參閱

IObjectControl