Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Предоставляет методы, позволяющие ведущему приложению выполнять запросы среды CLR или уведомлять среду CLR о связанной задаче.
Методы
| Метод | Описание |
|---|---|
| Метод Abort | Запрашивает, чтобы среда CLR прервала задачу, представленную текущим ICLRTask экземпляром. |
| Метод ExitTask | Уведомляет среду CLR о завершении задачи, связанной с текущим ICLRTask экземпляром, и пытается корректно завершить задачу. |
| Метод GetMemStats | Получает статистические сведения об использовании ресурсов памяти задачей, представленной текущим ICLRTask экземпляром. |
| Метод LocksHeld | Возвращает количество блокировок, удерживаемых в данный момент в задаче. |
| Метод NeedsPriorityScheduling | Возвращает значение, указывающее, должен ли узел назначать высокий приоритет для перепланирования задачи, представленной текущим ICLRTask экземпляром. |
| Метод Reset | Сообщает среде CLR о том, что узел завершил задачу, и позволяет среде CLR повторно использовать текущий ICLRTask экземпляр для представления другой задачи. |
| Метод RudeAbort | Вызывает немедленное прерывание среды CLR задачи, представленной текущим ICLRTask экземпляром, без гарантии выполнения методов завершения. |
| Метод SetTaskIdentifier | Задает уникальный идентификатор задачи, представленной текущим ICLRTask экземпляром, для использования в отладке. |
| Метод SwitchIn | Уведомляет среду CLR о том, что задача, представленная текущим ICLRTask экземпляром, находится в работоспособном состоянии. |
| Метод SwitchOut | Уведомляет среду CLR о том, что задача, представленная текущим ICLRTask экземпляром, больше не находится в работоспособном состоянии. |
| Метод YieldTask | Запрашивает, чтобы среда CLR была доступна для других задач. Среда CLR не гарантирует, что задача будет помещена в состояние, в котором она может дать время обработки. |
Комментарии
— ICLRTask это представление задачи для среды CLR. В любой момент выполнения кода задачу можно описать как выполняющуюся или ожидающую выполнения. Узел вызывает ICLRTask::SwitchIn метод , чтобы уведомить среду CLR о том, что задача, представленная текущим ICLRTask экземпляром, теперь находится в работоспособном состоянии. После вызова ICLRTask::SwitchInузел может запланировать задачу в любом потоке операционной системы, за исключением случаев, когда среде выполнения требуется сопоставление потоков, как указано в вызовах методов IHostTaskManager::BeginThreadAffinity и IHostTaskManager::EndThreadAffinity . Через некоторое время операционная система может решить удалить задачу из потока и поместить ее в нерабочем состоянии. Например, это может произойти всякий раз, когда задача блокирует примитивы синхронизации или ожидает завершения операций ввода-вывода. Узел вызывает SwitchOut , чтобы уведомить среду CLR о том, что задача, представленная текущим ICLRTask экземпляром, больше не находится в работоспособном состоянии.
Задача обычно завершается в конце выполнения кода. В это время узел вызывает ICLRTask::ExitTask , чтобы уничтожить связанный ICLRTaskобъект . Однако задачи также можно перезаработать с помощью вызова ICLRTask::Reset, который позволяет ICLRTask повторно использовать экземпляр . Такой подход предотвращает многократное создание и уничтожение экземпляров.
Требования
Платформы: см. раздел Требования к системе.
Заголовка: MSCorEE.h
Библиотека: Включается в качестве ресурса в MSCorEE.dll
версии платформа .NET Framework: доступно с версии 2.0.