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


Метод ICLRSyncManager::GetRWLockOwnerNext

Возвращает следующий экземпляр IHostTask , заблокированный в текущей блокировке модуля чтения и записи.

Синтаксис

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

Параметры

Iterator
[in] Итератор, созданный с помощью вызова CreateRWLockOwnerIterator.

ppOwnerHostTask
[out] Указатель на следующий IHostTask объект, ожидающий блокировки, или значение NULL, если задача не ожидает.

Возвращаемое значение

HRESULT Описание:
S_OK GetRWLockOwnerNext возвращено успешно.
HOST_E_CLRNOTAVAILABLE Среда CLR не была загружена в процесс, или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов.
HOST_E_TIMEOUT Время ожидания звонка истекло.
HOST_E_NOT_OWNER Вызывающий объект не владеет блокировкой.
HOST_E_ABANDONED Событие было отменено во время ожидания заблокированного потока или волокна.
E_FAIL Произошла неизвестная катастрофическая ошибка. Когда метод возвращает E_FAIL, среда CLR больше не используется в рамках процесса. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE.

Комментарии

Если ppOwnerHostTask задано значение NULL, итерация завершена, и узел должен вызвать метод DeleteRWLockOwnerIterAtor .

Примечание

Среда CLR вызывает AddRef объект , IHostTask на который ppOwnerHostTask указывает, чтобы предотвратить выход из этой задачи, пока узел содержит указатель. Узел должен вызвать Release для уменьшения количества ссылок по завершении.

Требования

Платформы: см. раздел Требования к системе.

Заголовка: MSCorEE.h

Библиотека: Включается в качестве ресурса в MSCorEE.dll

версии платформа .NET Framework: доступно с версии 2.0.

См. также раздел