Compartilhar via


Método de IExecutionResource::Remove

Retorna o recurso de execução para o Gerenciador de recursos.

virtual void Remove(
   _Inout_ IScheduler * pScheduler
) =0;

Parâmetros

  • pScheduler
    Uma interface para o Agendador fazendo a solicitação para remover esse recurso de execução.

Comentários

Use esse método para retornar os recursos de execução autônoma, assim como recursos de execução associados a raízes de processador virtual para o Gerenciador de recursos.

Se este é um recurso de execução autônoma recebidos de um dos métodos ISchedulerProxy::SubscribeCurrentThread ou ISchedulerProxy::RequestInitialVirtualProcessors, chamando o método Remove terminará a inscrição do thread que o recurso foi criado para representar.Necessário para finalizar todas as assinaturas de thread antes de desligar um proxy Agendador e deve chamar Remove do thread que criou a assinatura.

Raízes de processador virtual também podem ser retornados para o Gerenciador de recursos invocando o Remove método, porque a interface IVirtualProcessorRoot herda de IExecutionResource interface.Talvez você precise retornar uma raiz virtual do processador em resposta a uma chamada para o IScheduler::RemoveVirtualProcessors método, ou quando você terminar com uma raiz de processador virtual assinadas obtido do ISchedulerProxy::CreateOversubscriber método.Para raízes virtuais do processador, não existem restrições em qual thread pode chamar o Remove método.

invalid_argumenté lançada se o parâmetro pScheduler é definido como NULL.

invalid_operationé lançada se o parâmetro pScheduler é diferente do Agendador que este recurso de execução foi criado para, ou, com um recurso de execução autônoma, se o thread atual é diferente do thread que criou a assinatura de thread.

Requisitos

Cabeçalho: concrtrm.h

Namespace: concorrência

Consulte também

Referência

Estrutura de IExecutionResource

invalid_argument Class

classe de invalid_operation