ISSAsynchStatus (OLE DB)
ISSAsynchStatus предоставляет поддержку SQL Server асинхронных операций. Этот необязательный интерфейс наследует основной интерфейс OLE DB — IDBAsynchStatus. Помимо методов Abort и GetStatus , унаследованных от IDBAsynchStatus, ISSAsynchStatus предоставляет один новый метод, который используется для ожидания конца асинхронной операции или истечения назначенного времени.
Метод | Описание |
---|---|
ISSAsynchStatus::Abort (OLE DB) | Отменяет операцию асинхронного выполнения. |
Функция ISSAsynchStatus::GetStatus (OLE DB) | Возвращает состояние операции асинхронного выполнения. |
ISSAsynchStatus::WaitForAsynchCompletion (OLE DB) | Ждет завершения синхронной операции или истечения назначенного времени. |
Remarks
Реализация метода ISSAsynchStatus::GetStatus в интерфейсе ISSAsynchStatus аналогична методу IDBAsynchStatus::GetStatus , за одним исключением: если инициализация объекта источника данных прервана преждевременно, возвращается не DB_E_CANCELED, а E_UNEXPECTED (хотя ISSAsynchStatus::WaitForAsynchCompletion возвращает DB_E_CANCELED). Это происходит потому, что объект источника данных не остается в обычном состоянии, следующем за аварийным прерыванием операции, чтобы можно было предпринимать новые попытки инициализации.
Следующие методы поддерживают асинхронное выполнение в SQL Server:
ICommand::Execute
IOpenRowset::OpenRowset
IMultipleResults::GetResult