ISSAsynchStatus::WaitForAsynchCompletion (OLE DB)
Czeka, aż do zakończenia operacji asynchronicznie nakaz lub do czas-out występuje.
Składnia
HRESULT WaitForAsynchCompletion(
DWORD dwMillisecTimeOut);
Argumenty
- dwMillisecTimeOut[w]
Limit czasu w milisekundach.
Wartości kodów powrotnych
S_OK
metoda powiodło się.E_UNEXPECTED
Zestawu zestaw wierszy jest w stanie nieużywane, ponieważ metody ITransaction::Commit lub ITransaction::Abort została wywołana lub zestawu zestaw wierszy zostało anulowane w fazie jego inicjowania.DB_E_CANCELED
Przetwarzanie asynchroniczne zostało anulowane podczas zapełnianie zestaw wierszy lub dane obiekt źródłowy inicjowania.DB_S_ASYNCHRONOUS
Tej operacji nie wykonano jeszcze nawet jeśli określony czas-osiągnął limit.
Ostrzeżenie
Oprócz wartości Kod zwrotny wymienionych powyżej ISSAsynchStatus::WaitForAsynchCompletion metoda obsługuje również kod zwrotny zwracanych przez core OLEDB ICommand::Execute i IDBInitialize::Initialize metoda.
Uwagi
ISSAsynchStatus::WaitForAsynchCompletion metoda nie zwróci się do czas-out przeszło wartość (w milisekundach) lub sporządzono oczekująca operacja.Polecenia obiekt ma elementu CommandTimeout właściwość, która określa liczbę sekund, kwerenda będzie działać zanim przekroczy limit czasu.Elementu CommandTimeout właściwość będzie ignorowana, jeśli jest używany w połączeniu z ISSAsynchStatus::WaitForAsynchCompletion metoda.
czas-Out właściwość jest ignorowana dla operacji asynchronicznych.czas-Brak parametru ISSAsynchStatus::WaitForAsynchCompletion określa maksymalną ilość czas upłynąć, zanim sterowanie jest zwracane do obiektu wywołującego.Jeśli to czas-out wygasa, zwrócone zostaną DB_S_ASYNCHRONOUS.Limity czasu nigdy anulowanie operacji asynchronicznych.Jeśli aplikacja musi anulować operację asynchroniczną i nie zostanie zakończona w ciągu czas-okresu, musi czekać na czas-out, a następnie jawnie anulować operację, jeśli zwrócona DB_S_ASYNCHRONOUS.
Ostrzeżenie
Gdy używane są składniki usługi DB OLE, S_OK może być zwrócona oczekiwaniami DB_S_ASYNCHRONOUS tak, aby aplikacje powinny wywoływać ISSAsynchStatus::GetStatus Aby sprawdzić, czy zakończenia zwracane jest S_OK lub DB_S_ASYNCHRONOUS.
Jeśli dwMillisecTimeOut wartość jest zestaw do NIESKOŃCZONE, ISSAsynchStatus::WaitForAsynchCompletion metoda blokuje, aż zakończy działanie.Jeśli dwMillisecTimeOut wartość jest zestaw 0, następnie metoda zwróci niezwłocznie o stanie Oczekujące operacje.Jeśli czas-out wygasa przed zakończeniem operacji DB_S_ASYNCHRONOUS zostaną zwrócone.
Po zakończeniu operacji przed czas-out wygasa, zwrócona wartość HRESULT będzie HRESULT zwrócony przez operację (HRESULT czy zostały zwrócone operacji wykonano synchronicznie).
Ponadto właściwość SSPROP_ISSAsynchStatus został dodany do zestaw właściwości DBPROPSET_SQLSERVERROWSET.Dostawców obsługujących ISSAsynchStatus interfejs musi implementować właściwość ta wartość VARIANT_TRUE.