Método IExecutionResource::Remove
Retorna esse recurso de execução para o Gerenciador de Recursos.
virtual void Remove(
_Inout_ IScheduler * pScheduler
) =0;
Parâmetros
- pScheduler
Uma interface para o agendador que faz a solicitação remover esse recurso de execução.
Comentários
Use esse método para retornar os recursos autônomos de execução bem como os recursos de execução associados a raiz virtual do processador para o Gerenciador de Recursos.
Se esse é um recurso de execução autônoma que você recebeu dos métodos ISchedulerProxy::SubscribeCurrentThread ou ISchedulerProxy::RequestInitialVirtualProcessors, chame o método Remove encerrará a assinatura do thread que o recurso foi criado para representar. É necessário encerrar todas as assinaturas de thread antes de fechar um proxy do agendador, e deve chamar Remove de threads que criou a assinatura.
O processador virtual enraíza, também, pode ser retornado ao Gerenciador de Recursos chamando o método de Remove , pois a interface IVirtualProcessorRoot herda da interface de IExecutionResource . Você pode precisar retornar uma raiz virtual do processador ou em resposta a uma chamada ao método de IScheduler::RemoveVirtualProcessors , ou quando você terminar com uma raiz virtual oversubscribed de processador você obteve do método de ISchedulerProxy::CreateOversubscriber . Para raiz virtual de processador, não há nenhuma limitação em que o thread pode chamar o método de Remove .
invalid_argument será lançada se o parâmetro pScheduler é definido como NULL.
invalid_operation será gerado se o parâmetro pScheduler é diferente do agendador que esse recurso de execução esteve criado para, ou, com um recurso de execução autônoma, se o thread atual é diferente do thread que criou a assinatura do thread.
Requisitos
Cabeçalho: concrtrm.h
Namespace: simultaneidade