ISSAsynchStatus (OLE DB)
ISSAsynchStatus會公開SQL Server非同步作業的支援。 這是繼承自核心 OLE DB 介面 IDBAsynchStatus的選擇性介面。 除了繼承自 IDBAsynchStatus 的 Abort 和 GetStatus 方法之外,ISSAsynchStatus 還提供一個新方法,用來等到非同步作業完成或發生逾時。
方法 | Description |
---|---|
ISSAsynchStatus::Abort (OLE DB) | 取消非同步執行的作業。 |
ISSAsynchStatus::GetStatus (OLE DB) | 傳回以非同步方式執行作業的狀態。 |
ISSAsynchStatus::WaitForAsynchCompletion (OLE DB) | 等到非同步執行的作業完成或發生逾時為止。 |
備註
ISSAsynchStatus::GetStatus 方法的 ISSAsynchStatus 實作與 IDBAsynchStatus::GetStatus 方法相同,不同的是如果中止資料來源物件的初始化,便會傳回 E_UNEXPECTED,而不是 DB_E_CANCELED (雖然 ISSAsynchStatus::WaitForAsynchCompletion 會傳回 DB_E_CANCELED)。 這是因為資料來源物件在中止作業後不會保留在一般的狀態,如此可以讓系統嘗試進一步的初始化作業。
下列方法支援在 SQL Server 中使用非同步執行:
ICommand::Execute
IOpenRowset::OpenRowset
IMultipleResults::GetResult