IThreadProxy::SwitchOut Method

Blocks the currently executing thread proxy until it can be resumed by an available virtual processor root.

virtual void SwitchOut() =0;

Remarks

Use SwitchOut to block an executing thread proxy after relinquishing the underlying virtual processor root. This method is useful when you want to reduce the number of virtual processor roots your scheduler has, either because the Resource Manager has instructed you to do so, or because you requested a temporary oversubscribed virtual processor root, and are done with it. The thread proxy can resume execution when a different virtual processor root in the scheduler is available to execute it.

The blocking thread proxy can be resumed by calling the function SwitchTo to switch to this thread proxy's execution context. You can also resume the thread proxy, by using its associated context to activate a virtual processor root. For more information on how to do this, see IVirtualProcessorRoot::Activate.

SwitchOut must be called on the IThreadProxy interface that represents the currently executing thread or the results are undefined.

Requirements

Header: concrtrm.h

Namespace: Concurrency

See Also

Reference

IThreadProxy Structure