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


Метод IHostGCManager::ThreadIsBlockingForSuspension

Уведомляет основное приложение о том, что поток, из которого осуществляется вызов метода, готов заблокировать себя для сборки мусора.

HRESULT ThreadIsBlockingForSuspension ();

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

HRESULT

Описание

S_OK

Метод ThreadIsBlockingForSuspension успешно возвратил значение.

HOST_E_CLRNOTAVAILABLE

Среда CLR не загружена в процесс или находится в состоянии, в котором ей не удается выполнить управляемый код или успешно обработать вызов.

HOST_E_TIMEOUT

Время ожидания вызова истекло.

HOST_E_NOT_OWNER

Вызывающий объект не владеет блокировкой.

HOST_E_ABANDONED

Событие, которого ожидал заблокированный поток или нить, было отменено.

E_FAIL

Произошел неизвестный разрушительный сбой. Если метод вернет значение E_FAIL, среду CLR более нельзя будет использовать в данном процессе. Последующие вызовы методов размещения возвращают значение HOST_E_CLRNOTAVAILABLE.

Заметки

Обычно среда CLR вызывает метод ThreadIsBlockForSuspension в рамках подготовки к сборке мусора для предоставления основному приложению возможности перепланирования потока для неуправляемых задач.

Важное примечаниеВажно

После вызова метода ThreadIsBlockingForSuspension основное приложение вызывает задачи повторного планирования.После того, как среда выполнения вызовет SuspensionStarting, основное приложение не должно планировать задачу повторно.

Требования

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

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

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

Версии платформы .NET Framework: 4, 3.5 с пакетом обновления 1 (SP1), 3.5, 3.0 с пакетом обновления 1 (SP1), 3.0, 2.0 с пакетом обновления 1 (SP1), 2.0

См. также

Ссылки

Интерфейс ICLRTask

Интерфейс ICLRTaskManager

Интерфейс IHostTask

Интерфейс IHostTaskManager

Интерфейс IHostGCManager