Método ICLRTaskManager::CreateTask
Solicita explicitamente que o CLR (Common Language Runtime) crie uma nova tarefa.
Sintaxe
HRESULT CreateTask (
[out] ICLRTask **pTask
);
Parâmetros
pTask
[out] Um ponteiro para o endereço de um ICLRTask recém-criado ou nulo, se a tarefa não pôde ser criada.
Valor Retornado
HRESULT | Descrição |
---|---|
S_OK | O método foi retornado com êxito. |
HOST_E_CLRNOTAVAILABLE | O CLR não foi carregado em um processo, ou o CLR está em um estado no qual não pode executar código gerenciado ou processar a chamada com êxito. |
HOST_E_TIMEOUT | Uma chamada atingiu o tempo limite. |
HOST_E_NOT_OWNER | O chamador não possui o bloqueio. |
HOST_E_ABANDONED | Um evento foi cancelado enquanto uma fibra ou um thread bloqueado estava esperando por ele. |
E_FAIL | Uma falha catastrófica desconhecida ocorreu. Quando um método retorna E_FAIL, o CLR não pode mais ser usado no processo. Chamadas subsequentes para métodos de hospedagem retornam HOST_E_CLRNOTAVAILABLE. |
E_OUTOFMEMORY | Não há memória suficiente disponível para alocar o recurso solicitado. |
Comentários
O CLR cria uma nova tarefa automaticamente após a inicialização, quando o código do usuário cria um thread usando tipos no namespace System.Threading ou quando o tamanho do pool de threads é aumentado. Ele também cria tarefas quando o código não gerenciado faz uma chamada para uma função gerenciada.
O CreateTask
permite que o host faça uma solicitação explícita para que o CLR crie uma nova tarefa. Por exemplo, o host pode invocar esse método para pré-inicializar estruturas de dados.
Importante
A nova tarefa é retornada em um estado suspenso e permanece suspensa até que o host chame explicitamente IHostTask::Start.
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