ISSAsynchStatus (OLE DB)
ISSAsynchStatus では、SQL Server の非同期操作のサポートが公開されます。これは、主要な OLE DB インターフェイスである IDBAsynchStatus から継承される省略可能なインターフェイスです。ISSAsynchStatus には、IDBAsynchStatus から継承される Abort メソッドと GetStatus メソッドに加えて、非同期操作が完了するかタイムアウトが発生するまで待機する際に使用する新しいメソッドが 1 つ用意されています。
メソッド |
説明 |
---|---|
非同期に実行されている操作をキャンセルします。 |
|
非同期に実行されている操作の状態を返します。 |
|
非同期に実行されている操作が完了するかタイムアウトが発生するまで待機します。 |
説明
ISSAsynchStatus に実装される ISSAsynchStatus::GetStatus メソッドは、IDBAsynchStatus::GetStatus メソッドと同じです。ただし、データ ソース オブジェクトの初期化が中止された場合、DB_E_CANCELED ではなく E_UNEXPECTED が返される点が異なります (ISSAsynchStatus::WaitForAsynchCompletion は、DB_E_CANCELED を返します)。これは、初期化の中止後、追加の初期化操作が試行される場合に備えて、データ ソース オブジェクトの状態が通常の状態のままにならないためです。
次に、SQL Server の非同期実行の使用をサポートしているメソッドを示します。
ICommand::Execute
IOpenRowset::OpenRowset
IMultipleResults::GetResult