Udostępnij za pośrednictwem


ICLRSyncManager::GetRWLockOwnerNext — Metoda

Pobiera następne wystąpienie IHostTask , które jest zablokowane w bieżącej blokadzie modułu zapisywania czytnika.

Składnia

HRESULT GetRWLockOwnerNext (  
    [in] SIZE_T       Iterator,  
    [out] IHostTask  *ppOwnerHostTask  
);  

Parametry

Iterator
[in] Iterator, który został utworzony przy użyciu wywołania metody CreateRWLockOwnerIterator.

ppOwnerHostTask
[out] Wskaźnik do następnego IHostTask , który oczekuje na blokadę lub wartość null, jeśli żadne zadanie nie czeka.

Wartość zwracana

HRESULT Opis
S_OK GetRWLockOwnerNext zwrócone pomyślnie.
HOST_E_CLRNOTAVAILABLE Środowisko uruchomieniowe języka wspólnego (CLR) nie zostało załadowane do procesu lub clR jest w stanie, w którym nie może uruchomić kodu zarządzanego ani pomyślnie przetworzyć wywołania.
HOST_E_TIMEOUT Upłynął limit czasu wywołania.
HOST_E_NOT_OWNER Obiekt wywołujący nie jest właścicielem blokady.
HOST_E_ABANDONED Zdarzenie zostało anulowane, gdy zablokowany wątek lub światłowod czekał na nie.
E_FAIL Wystąpił nieznany katastrofalny błąd. Gdy metoda zwraca E_FAIL, clR nie będzie już można jej używać w ramach tego procesu. Kolejne wywołania metod hostingu zwracają HOST_E_CLRNOTAVAILABLE.

Uwagi

Jeśli ppOwnerHostTask parametr ma wartość null, iteracja została zakończona, a host powinien wywołać metodę DeleteRWLockOwnerIterator .

Uwaga

ClR wywołuje AddRef metodę IHostTask , do której ppOwnerHostTask wskazuje, aby zapobiec zamykaniu tego zadania, gdy host przechowuje wskaźnik. Po zakończeniu host musi wywołać Release metodę dekrementacji liczby odwołań.

Wymagania

Platformy: Zobacz Wymagania systemowe.

Nagłówka: MSCorEE.h

Biblioteki: Uwzględnione jako zasób w MSCorEE.dll

wersje .NET Framework: dostępne od wersji 2.0

Zobacz też