Метод IObjectContext::SetAbort (comsvcs.h)
Объявляет, что транзакция, в которой выполняется объект, должна быть прервана и что объект должен быть деактивирован при возврате из текущего вызова метода.
Синтаксис
HRESULT SetAbort();
Возвращаемое значение
Этот метод может возвращать следующие значения.
Код возврата | Описание |
---|---|
|
Метод завершился успешно. |
|
Произошла непредвиденная ошибка. Это может произойти, если один объект передает указатель IObjectContext другому объекту, а другой объект вызывает SetAbort с помощью этого указателя. Указатель IObjectContext недопустим вне контекста объекта, который его первоначально получил. |
Комментарии
Объект автоматически деактивируется при возвращении из метода, в котором он вызвал SetAbort. Если объект является корнем автоматической транзакции, COM+ прерывает транзакцию. Если объект является транзакционной, но не является корнем автоматической транзакции, транзакция, в которой он участвует, обречена на прерывание.
Вы можете вызвать SetAbort в обработчиках ошибок, чтобы убедиться, что транзакция прерывается при возникновении ошибки. Вы также можете вызвать SetAbort в начале метода, чтобы предотвратить преждевременное фиксацию объекта в случае непредвиденного возврата, а затем, если все пойдет хорошо, вызов setComplete непосредственно перед возвратом метода.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | comsvcs.h |