Condividi tramite


Metodo IVirtualProcessorRoot::Activate

Provoca il proxy del thread associato all'interfaccia del contesto di esecuzione pContext per iniziare l'esecuzione su questa radice del processore virtuale.

virtual void Activate(
   _Inout_ IExecutionContext * pContext
) =0;

Parametri

  • pContext
    Un'interfaccia al contesto di esecuzione che sarà distribuita su questa radice del processore virtuale.

Note

Gestione risorse fornirà un proxy del thread in caso di mancata associazione all'interfaccia del contesto di esecuzione pContext

È possibile utilizzare il metodo Activate per iniziare l'esecuzione del lavoro su una nuova radice del processore virtuale restituita da Gestione risorse o per ripristinare il proxy del thread su una radice del processore virtuale disattivata o in procinto di essere disattivata.Per ulteriori informazioni sulla disattivazione, vedere IVirtualProcessorRoot::Deactivate.Quando si riprende una radice del processore virtuale disattivata, il parametro pContext deve essere identico a quello utilizzato per disattivare la radice del processore virtuale.

Una volta attivata per la prima volta una radice del processore virtuale, è possibile che coppie successive di chiamate a Deactivate e Activate concorrano fra di loro.Ciò significa che Gestione risorse può ricevere una chiamata su Activate prima della ricezione della chiamata Deactivate a cui era destinata.

Quando si attiva una radice del processore virtuale, si segnala a Gestione risorse che la radice del processore virtuale è attualmente occupata con il lavoro.Se l'utilità di pianificazione non riesce a trovare alcun lavoro da eseguire su questa radice, si prevede che richiami il metodo Deactivate che informa il gestore risorse che la radice del processore virtuale è inattiva.Gestione risorse utilizza questi dati per il bilanciamento del carico del sistema.

invalid_argument è generata se l'argomento pContext ha il valore NULL.

invalid_operation viene generato se l'argomento pContext non rappresenta il contesto di esecuzione inviato più recentemente da questa radice del processore virtuale.

L'atto di attivare la radice di un processore virtuale incrementa di uno il livello di sottoscrizione del thread di hardware sottostante.Per ulteriori informazioni sui livelli della sottoscrizione, vedere IExecutionResource::CurrentSubscriptionLevel.

Requisiti

Header: concrtrm.h

Concorrenza diSpazio dei nomi:

Vedere anche

Riferimenti

Struttura IVirtualProcessorRoot

Metodo IVirtualProcessorRoot::Deactivate

Metodo IExecutionResource::CurrentSubscriptionLevel