Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Fornece métodos que permitem que o host faça solicitações do CLR (Common Language Runtime) ou forneça uma notificação ao CLR sobre a tarefa associada.
Métodos
| Método | Descrição |
|---|---|
| Método Abort | Solicita que o CLR anule a tarefa que a instância atual ICLRTask representa. |
| Método ExitTask | Notifica o CLR de que a tarefa associada à instância atual ICLRTask está terminando e tenta desligar a tarefa normalmente. |
| Método GetMemStats | Obtém informações estatísticas sobre o uso de recursos de memória pela tarefa representada pela instância atual ICLRTask. |
| Método LocksHeld | Obtém o número de bloqueios atualmente mantidos na tarefa. |
| Método NeedsPriorityScheduling | Obtém um valor que indica se o host deve atribuir alta prioridade ao reagendamento da tarefa representada pela instância atual ICLRTask. |
| Método Reset | Informa ao CLR que o host concluiu uma tarefa e permite que o CLR reutilize a instância atual ICLRTask para representar outra tarefa. |
| Método RudeAbort | Faz com que o CLR anule imediatamente a tarefa representada pela instância atual ICLRTask, sem a garantia de que os finalizadores serão executados. |
| Método SetTaskIdentifier | Define um identificador exclusivo para a tarefa representada pela instância atual ICLRTask, para uso na depuração. |
| Método SwitchIn | Notifica o CLR de que a tarefa representada pela instância atual ICLRTask está em um estado operável. |
| Método SwitchOut | Notifica o CLR de que a tarefa representada pela instância atual ICLRTask não está mais em um estado operável. |
| Método YieldTask | Solicita que o CLR disponibilize o tempo do processador para outras tarefas. O CLR não garante que a tarefa será colocada em um estado em que possa gerar tempo de processamento. |
Comentários
Uma ICLRTask é a representação de uma tarefa para o CLR. A qualquer momento durante a execução do código, uma tarefa pode ser descrita como em execução ou aguardando para ser executada. O host chama o método ICLRTask::SwitchIn para notificar o CLR de que a tarefa que a instância atual ICLRTask representa agora está em um estado operável. Após uma chamada a ICLRTask::SwitchIn, o host pode agendar a tarefa em qualquer thread do sistema operacional, exceto nos casos em que o runtime requer afinidade de thread, conforme especificado por chamadas para os métodos IHostTaskManager::BeginThreadAffinity e IHostTaskManager::EndThreadAffinity. Algum tempo depois, o sistema operacional pode decidir remover a tarefa do thread e colocá-la em um estado de não execução. Por exemplo, isso pode acontecer sempre que a tarefa bloquear primitivos de sincronização ou aguardar a conclusão das operações de E/S. O host chama SwitchOut para notificar o CLR de que a tarefa representada pela instância atual ICLRTask não está mais em um estado operável.
Uma tarefa normalmente termina no final da execução do código. Nesse momento, o host chama ICLRTask::ExitTask para destruir o ICLRTask associado. No entanto, as tarefas também podem ser recicladas usando uma chamada para ICLRTask::Reset, o que permite que a instância ICLRTask seja usada novamente. Essa abordagem impede a sobrecarga de criar e destruir instâncias repetidamente.
Requisitos
Plataformas: confira Requisitos do sistema.
Cabeçalho: MSCorEE.h
Biblioteca: incluída como um recurso no MSCorEE.dll
Versões do .NET Framework: disponíveis desde 2.0