Поделиться через


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)

Ждет завершения синхронной операции или истечения назначенного времени.

Замечания

Реализация метода ISSAsynchStatus::GetStatus в интерфейсе ISSAsynchStatus аналогична методу IDBAsynchStatus::GetStatus, за одним исключением: если инициализация объекта источника данных прервана преждевременно, возвращается не DB_E_CANCELED, а E_UNEXPECTED (хотя ISSAsynchStatus::WaitForAsynchCompletion возвращает DB_E_CANCELED). Это происходит потому, что объект источника данных не остается в обычном состоянии, следующем за аварийным прерыванием операции, чтобы можно было предпринимать новые попытки инициализации.

Следующие методы поддерживают асинхронное выполнение в SQL Server:

  • ICommand::Execute

  • IOpenRowset::OpenRowset

  • IMultipleResults::GetResult

См. также

Справочник

Основные понятия