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


Метод IHostThreadPoolManager::QueueUserWorkItem

Помещает функцию в очередь на выполнение, и указывает объект, содержащий данные для использования этой функцией. Функция выполняется, когда поток из пула потоков становится доступным.

HRESULT QueueUserWorkItem (
    [in] LPTHREAD_START_ROUTINE Function,
    [in] PVOID Context,
    [in] ULONG Flags
);

Параметры

  • Function
    [in] Указатель функции, представляющий выполняемую функцию.

  • Context
    [in] Объект, содержащий данные, которые необходимо использовать Function.

  • Flags
    [in] Одно из значений флагов, заданных методом QueueUserWorkItem для Win32, который осуществляет управление выполнением.

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

HRESULT

Описание

S_OK

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

HOST_E_CLRNOTAVAILABLE

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

HOST_E_TIMEOUT

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

HOST_E_NOT_OWNER

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

HOST_E_ABANDONED

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

E_FAIL

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

Заметки

Метод QueueUserWorkItem ставит в очередь рабочий элемент в рабочем потоке пула потоков. Его сигнатура и типы параметров идентичны их аналогам в соответствующей функцииWin32. Дополнительные сведения см. в документации по платформе Windows.

Требования

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

См. также

Ссылки

QueueUserWorkItem

ThreadPool

Интерфейс IHostThreadPoolManager