IDebugClient::EndSession 方法 (dbgeng.h)
EndSession 方法會結束目前的調試程式會話。
語法
HRESULT EndSession(
[in] ULONG Flags
);
參數
[in] Flags
指定如何結束會話。 旗標 可以是下列其中一個值:
旗 | 描述 |
---|---|
DEBUG_END_PASSIVE | 執行工作階段的清除。 |
DEBUG_END_ACTIVE_TERMINATE | 嘗試在工作階段執行清除之前終止所有使用者模式目標。 |
DEBUG_END_ACTIVE_DETACH | 嘗試先從所有目標中斷連線,再執行會話的清除。 |
DEBUG_END_REENTRANT | 只執行不需要取得鎖定的清除。 如需詳細資訊,請參閱一節。 |
DEBUG_END_DISCONNECT |
請勿結束會話。 中斷用戶端與會話的連線,並停用用戶端。
此旗標適用於遠端用戶端中斷連線時。 它會產生有關中斷連線的伺服器訊息。 |
傳回值
這個方法也可能傳回錯誤值。 如需詳細資訊,請參閱 傳回值。
傳回碼 | 描述 |
---|---|
|
方法成功。 |
言論
這個方法可以隨時呼叫,Flags 設為 DEBUG_END_REENTRANT。 例如,如果應用程式需要結束,但另一個線程正在使用引擎,這個方法就可以用來執行盡可能多的清除。
使用DEBUG_END_REENTRANT可能會使引擎處於不確定狀態。 如果使用這個旗標,就不應該對引擎進行後續呼叫。
如需除錯程式工作階段的詳細資訊,請參閱 偵錯工作階段和執行模型。
要求
要求 | 價值 |
---|---|
目標平臺 | 桌面 |
標頭 | dbgeng.h (include Dbgeng.h) |