Método de IExecutionResource::Remove

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

virtual void Remove(
   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 independente, como também os recursos de execução associados a raízes do processador virtual para o Gerenciador de recursos.

Se este é um recurso de execução independente 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. São necessários para finalizar todas as assinaturas de thread antes de desligar um proxy do Agendador e deve chamar Remove do thread que criou a assinatura.

Raízes virtuais do processador, também, podem ser retornados ao Gerenciador de recursos, chamando o Remove método, desde 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 assinadas processador virtual obtido a partir de ISchedulerProxy::CreateOversubscriber método. Para raízes do processador virtual, não existem restrições no segmento que pode chamar o Remove método.

invalid_argumenté lançada se o parâmetro pScheduler é definida 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 independente, se o thread atual é diferente do thread que criou a assinatura de thread.

Requisitos

Cabeçalho: concrtrm.h

Namespace: Simultaneidade

Consulte também

Referência

invalid_argument Class

invalid_operation classe

Outros recursos

Estrutura de IExecutionResource