JetEndSession 函式
適用于: Windows |Windows Server
JetEndSession 函式
JetEndSession 函式會結束會話,並清除並解除配置與指定會話相關聯的任何資源。
JET_ERR JET_API JetEndSession(
__in JET_SESID sesid,
__in JET_GRBIT grbit
);
參數
sesid
要結束的會話。 會話結束時會釋放相關聯的資源。
grbit
保留的。 此參數可以包含JET_bitForceSessionClosed旗標,但此旗標是保留的,而且設定它沒有任何作用。
傳回值
此函式會傳回具有下列其中一個傳回碼 的JET_ERR 資料類型。 如需可能 ESE 錯誤的詳細資訊,請參閱 可延伸的儲存引擎錯誤 和 錯誤處理參數。
傳回碼 |
Description |
---|---|
JET_errSuccess |
作業已成功完成。 |
JET_errClientRequestToStopJetService |
因為與會話相關聯的實例上的所有活動因為對 JetStopService的呼叫而停止,所以無法完成作業。 |
JET_errInvalidParameter |
提供的其中一個參數包含非預期值,或數個參數值的組合會產生非預期的結果。 |
JET_errInvalidSesid |
會話不是有效的 JET 會話。 |
JET_errNotInitialized |
無法完成作業,因為與會話相關聯的實例尚未初始化。 |
JET_errOutOfMemory |
作業失敗,因為無法配置記憶體。 |
JET_errSessionInUse |
這表示會話在另一個執行緒上使用,或會話未正確設定或重設。 |
JET_errInstanceUnavailable |
無法完成作業,因為與會話相關聯的實例發生嚴重錯誤,要求撤銷所有資料的存取權以保護該資料的完整性。 此錯誤只會由 Windows XP 和更新版本傳回。 |
JET_errOutOfBuffers |
表示沒有任何緩衝區的系統錯誤。 |
JET_errRestoreInProgress |
因為與會話相關聯的實例上正在進行還原作業,所以無法完成作業。 |
JET_errTermInProgress |
因為與會話相關聯的實例正在關閉,所以無法完成作業。 |
成功時,會話控制碼已關閉,且無法使用,且已清除與此會話相關的所有資源。
失敗時,在排序資料表關閉、資料指標關閉和交易復原時,可能會發生數個額外的錯誤。 當呼叫 JetEndSession 時,這些錯誤不太可能發生,而且如果您的會話完全不在使用中,則非常不可能。 如果會話的某些部分無法正確清除,就會傳回這些錯誤。
備註
此 API 會復原任何未認可至層級 0 () 的開放式交易。 此外,也會清除與此會話相關聯的所有資料指標,以及任何已建立或開啟的排序資料表。
規格需求
需求 | 值 |
---|---|
用戶端 |
需要 Windows Vista、Windows XP 或 Windows 2000 Professional。 |
Server |
需要 Windows Server 2008、Windows Server 2003 或 Windows 2000 Server。 |
標頭 |
在 Esent.h 中宣告。 |
程式庫 |
使用 ESENT.lib。 |
Dll |
需要ESENT.dll。 |
另請參閱
JET_GRBIT
JET_SESID
JetBeginSession
JetRollback
JetSetSystemParameter
JetStopService