Метод ICLRTask::NeedsPriorityScheduling
Возвращает значение, указывающее, должна ли текущая задача, которая выключается, быть помечена как высокоприоритетная для перепланирования.
Синтаксис
HRESULT NeedsPriorityScheduling (
[out] BOOL *pbNeedsPriorityScheduling
);
Параметры
pbNeedsPriorityRescheduling
[out] true
, если узел должен попытаться как можно скорее перенести текущий экземпляр задачи; в противном случае — значение false
.
Возвращаемое значение
HRESULT | Описание: |
---|---|
S_OK | NeedsPriorityRescheduling возвращается успешно. |
HOST_E_CLRNOTAVAILABLE | Среда CLR не была загружена в процесс или среда CLR находится в состоянии, в котором она не может выполнить управляемый код или обработать вызов. |
HOST_E_TIMEOUT | Истекло время ожидания звонка. |
HOST_E_NOT_OWNER | Вызывающий объект не является владельцем блокировки. |
HOST_E_ABANDONED | Событие было отменено во время ожидания заблокированного потока или волокна. |
E_FAIL | Произошла неизвестная катастрофическая ошибка. Когда метод возвращает E_FAIL, среда CLR больше не поддерживается в процессе. Последующие вызовы методов размещения возвращают HOST_E_CLRNOTAVAILABLE. |
Комментарии
В ситуациях, когда задача близка к сборщику мусора, среда CLR устанавливает значение pbNeedsPriorityScheduling
true
, указывая на высокоприоритетное перепланирование. Это позволяет узлу быстро перепланировать задачу, тем самым минимизируя вероятность задержек при сборке мусора и позволяя узлу и среде выполнения сотрудничать в экономии ресурсов памяти.
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MSCorEE.h
Библиотека: Включено в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0