共用方式為


IVirtualProcessorRoot::Activate 方法

會導致與執行內容介面 pContext 相關的執行緒 Proxy 開始在此虛擬處理器根上執行。

virtual void Activate(
   IExecutionContext * pContext
) =0;

參數

  • pContext
    執行內容的介面,會在這個虛擬處理器根上分派。

備註

如果沒有執行緒 Proxy 與執行內容介面 pContext 相關,資源管理員會提供。

Activate 方法可用於在資源管理員所傳回的新虛擬處理器根上啟動執行工作,或是繼續在已停用或即將停用的虛擬處理器根上繼續進行執行緒 Proxy。 如需停用的詳細資訊,請參閱 IVirtualProcessorRoot::Deactivate。 當您要繼續進行已停用的虛擬處理器根時,參數 pContext 必須與用來停用虛擬處理器根的參數一樣。

第一次啟動虛擬處理器根之後,後續的 DeactivateActivate 呼叫組合可能會彼此競爭。 這表示資源管理員可以接受在收到正確的 Deactivate 前接收 Activate 的呼叫。

當您啟動虛擬處理器根時,您會發出訊號到這個虛擬處理器根目前正在處理的資源管理員。 如果您的排程器找不到任何可在這個根目錄執行的工作,應會叫用 Deactivate 方法,通知資源管理員虛擬處理器根處於閒置狀態。 資源管理員會使用此資料來負載平衡系統。

如果引數 pContext 具有值 NULL,就會擲回 invalid_argument

如果引數 invalid_operation 不代表最近由這個虛擬處理器根分派的執行內容,則會擲回 pContext。

啟動虛擬處理器根的動作會將基礎硬體執行緒訂閱層級增加一。 如需訂閱層級的詳細資訊,請參閱 IExecutionResource::CurrentSubscriptionLevel

需求

標頭: concrtrm.h

**命名空間:**並行

請參閱

參考

IVirtualProcessorRoot 結構

IVirtualProcessorRoot::Deactivate 方法

其他資源

IExecutionResource::CurrentSubscriptionLevel 方法