IVirtualProcessorRoot Structure

An abstraction for a hardware thread on which a thread proxy can execute.

struct IVirtualProcessorRoot : public IExecutionResource;


Public Methods



IVirtualProcessorRoot::Activate Method

Causes the thread proxy associated with the execution context interface pContext to start executing on this virtual processor root.

IVirtualProcessorRoot::Deactivate Method

Causes the thread proxy currently executing on this virtual processor root to stop dispatching the execution context. The thread proxy will resume executing on a call to the Activate method.

IVirtualProcessorRoot::EnsureAllTasksVisible Method

Causes data stored in the memory hierarchy of individual processors to become visible to all processors on the system. It ensures that a full memory fence has been executed on all processors before the method returns.

IVirtualProcessorRoot::GetId Method

Returns a unique identifier for the virtual processor root.


Every virtual processor root has an associated execution resource. The IVirtualProcessorRoot interface inherits from the IExecutionResource interface. Multiple virtual processor roots may correspond to the same underlying hardware thread.

The Resource Manager grants virtual processor roots to schedulers in response to requests for resources. A scheduler can use a virtual processor root to perform work by activating it with an execution context.

Inheritance Hierarchy




Header: concrtrm.h

Namespace: concurrency

See Also


concurrency Namespace