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


Метод IHostThreadPoolManager::GetMaxThreads

Получает максимальное количество потоков, поддерживаемых основным приложением одновременно в пуле потоков.

HRESULT GetMaxThreads (
    [out] DWORD *pdwMaxWorkerThreads
);

Параметры

  • pdwMaxWorkerThreads
    [out] Указатель максимального количества потоков, поддерживаемых узлом одновременно в пуле потоков.

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

HRESULT

Описание

S_OK

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

HOST_E_CLRNOTAVAILABLE

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

HOST_E_TIMEOUT

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

HOST_E_NOT_OWNER

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

HOST_E_ABANDONED

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

E_FAIL

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

E_NOTIMPL

Основное приложение не предоставляет реализацию GetMaxThreads.

Заметки

Среда CLR вызывает GetMaxThreads для определения общего количества потоков в пуле потоков. Метод GetAvailableThreads получает количество потоков, которые в настоящее время не обрабатывают рабочие элементы. Все запросы выше возвращенного значения параметра pdwMaxWorkerThreads остаются в очереди до появления доступных потоков.

Если узел не предоставляет реализацию GetMaxThreads, будет возвращено значение HRESULT E_NOTIMPL.

Требования

Платформы: см. раздел Требования к системе для .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

См. также

Ссылки

GetMaxThreads

ThreadPool

Метод IHostThreadPoolManager::GetMinThreads

Метод IHostThreadPoolManager::SetMaxThreads

Интерфейс IHostThreadPoolManager