Udostępnij przez


ISSAsynchStatus::Abort (OLE DB)

Dotyczy do:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsSystem Platform Analitycznych (PDW)Baza danych SQL w Microsoft Fabric

pobierz sterownik OLE DB

Anuluje operację wykonywaną asynchronicznie.

Składnia

  
HRESULT Abort(  
        HCHAPTER hChapter,  
        DBASYNCHOP eOperation);  

Arguments

hChapter[w]
Uchwyt rozdziału, dla którego można przerwać operację. Jeśli wywoływany obiekt nie jest obiektem wiersza lub operacja nie dotyczy rozdziału, wywołujący musi ustawić hChapter na DB_NULL_HCHAPTER.

eOperation[in]
Operacja przerwania. Należy użyć następującej wartości:

DBASYNCHOP_OPEN-The żądanie anulowania dotyczy asynchronicznego otwarcia lub zaludnienia zbioru wierszy albo asynchronicznej inicjalizacji obiektu źródła danych.

Zwracanie wartości kodu

S_OK
Wniosek o anulowanie operacji asynchronicznej został przetworzony. Nie gwarantuje to, że sama operacja została odwołana. Aby sprawdzić, czy operacja została anulowana, konsument powinien wywołać ISSAsynchStatus::GetStatus i sprawdzić DB_E_CANCELED; Jednak może nie zostać odwzajemniony podczas następnej rozmowy.

DB_E_CANTCANCEL
Operacji asynchronicznej nie można anulować.

DB_E_CANCELED
Żądanie przerwania operacji asynchronicznej zostało anulowane podczas powiadomień. Operacja jest nadal wykonywana asynchronicznie.

E_FAIL
Wystąpił błąd specyficzny dla operatora.

E_INVALIDARG
Parametr hChapter nie jest DB_NULL_HCHAPTER ani eOperation nie jest DBASYNCH_OPEN.

E_UNEXPECTED
ISSAsynchStatus::Abort został wywołany na obiekcie źródłowym danych, który IDBInitialize::Initialize nie został wywołany lub nie został ukończony.

ISSAsynchStatus::Abort wywołano na obiekcie źródłowym danych, który IDBInitialize::Initialize został wywołany, ale następnie anulowany przed inicjalizacją lub miał upływ czasu. Obiekt źródła danych nadal nie jest zainicjalizowany.

ISSAsynchStatus::Abort został wywołany na zestawie wierszy, na którym ITransaction::Commit OR ITransaction::Abort był wcześniej wywoływany, a zestaw wierszy nie przeżył commitu ani abortu, i znajduje się w stanie zombie.

ISSAsynchStatus::Abort wywoływano na zestawie wierszowym, który został asynchronicznie anulowany w fazie inicjalizacji. Zestaw wierszy jest w stanie zombie.

Uwagi

Przerwanie inicjalizacji wiersza lub obiektu źródła danych może pozostawić zestaw wierszy lub obiekt źródła danych w stanie zombie, tak że wszystkie metody inne niż IUnknown metody zwracają E_UNEXPECTED. Gdy tak się dzieje, jedyną możliwą akcją dla konsumenta jest zwolnienie zestawu wierszy lub obiektu źródła danych.

Wywołanie ISSAsynchStatus::Abort i przekazanie wartości eOperation innej niż DBASYNCHOP_OPEN zwraca S_OK. Ta wartość nie oznacza, że operacja została zakończona lub anulowana.

Zobacz też

Wykonywanie operacji asynchronicznych