Interface de ICLRTask
Fornece métodos que permitem que o host para fazer solicitações de common language runtime (CLR) ou para fornecer uma notificação para o CLR sobre a tarefa associada.
Métodos
Método |
Descrição |
---|---|
Solicitações que o CLR anular a tarefa que o atual ICLRTask representa a instância. |
|
Notifica o CLR que associadas a tarefa atual ICLRTask instância está terminando e tenta desligar a tarefa normalmente. |
|
Obtém informações estatísticas sobre o uso dos recursos de memória por tarefa representada pela atual ICLRTask instância. |
|
Obtém o número de bloqueios atualmente mantidos na tarefa. |
|
Obtém um valor indicando se o host deve atribuir uma prioridade alta para reagendamento da tarefa representada pela atual ICLRTask instância. |
|
Informa ao CLR que o host concluiu uma tarefa e permite que o CLR reutilizar o atual ICLRTask instância para representar outra tarefa. |
|
Faz com que o CLR anular a tarefa representada pela atual ICLRTask instância imediatamente, sem garantia de que os finalizadores serão executados. |
|
Define um identificador exclusivo para a tarefa representada pela atual ICLRTask instância, para uso na depuração. |
|
Notifica o CLR que a tarefa representada pelo atual ICLRTask instância está em estado operável. |
|
Notifica o CLR que a tarefa representada pelo atual ICLRTask instância não está mais em um estado operável. |
|
Solicitações que o tempo de processador do CLR tornar disponível para outras tarefas. O CLR não dá nenhuma garantia de que a tarefa será colocada em um estado onde ele pode gerar o tempo de processamento. |
Comentários
Um ICLRTask é a representação de uma tarefa para o CLR. Em qualquer momento durante a execução de código, uma tarefa pode ser descrita como executando ou aguardando para serem executados. As chamadas de host de ICLRTask::SwitchIn método para notificar o CLR que a tarefa que atual ICLRTask instância representa está agora no estado operável. Após uma chamada para ICLRTask::SwitchIn, o host pode agendar a tarefa em qualquer segmento do sistema operacional, exceto em casos onde o runtime requer a afinidade de segmento, conforme especificado por chamadas para o IHostTaskManager::BeginThreadAffinity e IHostTaskManager::EndThreadAffinity métodos. Algum tempo depois, o sistema operacional pode decidir remover a tarefa do thread e colocá-lo em um estado de execução não. Por exemplo, isso pode acontecer sempre que a tarefa bloqueia em primitivos de sincronização ou aguarda a conclusão das operações de i/O. As chamadas de host SwitchOut para notificar o CLR que a tarefa representada pelo atual ICLRTask instância não está mais em um estado operável.
Uma tarefa normalmente termina no final da execução de código. Nesse momento, o host chama ICLRTask::ExitTask para destruir os associados ICLRTask. No entanto, as tarefas também podem ser recicladas usando uma chamada para ICLRTask::Reset, que permite que o ICLRTask instância a ser usado novamente. Essa abordagem evita a sobrecarga de criação e destruição de instâncias de repetidamente.
Requisitos
Plataformas: Consulte Requisitos de sistema do .NET Framework.
Cabeçalho: MSCorEE.h
Biblioteca: Incluído como um recurso em mscoree
.NET Framework versões: 4, 3.5 SP1, 3.5, 3.0 SP1, 3.0, 2.0 SP1, 2.0