Share via


ISchedulerProxy::Shutdown Method

Notifies the Resource Manager that the scheduler is shutting down. This will cause the Resource Manager to immediately reclaim all resources granted to the scheduler.

virtual void Shutdown() =0;

Remarks

All IExecutionContext interfaces the scheduler received as a result of subscribing an external thread using the methods ISchedulerProxy::RequestInitialVirtualProcessors or ISchedulerProxy::SubscribeCurrentThread must be returned to the Resource Manager using IExecutionResource::Remove before a scheduler shuts itself down.

If your scheduler had any deactivated virtual processor roots, you must activate them using IVirtualProcessorRoot::Activate, and have the thread proxies executing on them leave the Dispatch method of the execution contexts they are dispatching before you invoke Shutdown on a scheduler proxy.

It is not necessary for the scheduler to individually return all of the virtual processor roots the Resource Manager granted to it via calls to the Remove method because all virtual processors roots will be returned to the Resource Manager at shutdown.

Requirements

Header: concrtrm.h

Namespace: concurrency

See Also

Reference

ISchedulerProxy Structure

ISchedulerProxy::RequestInitialVirtualProcessors Method

ISchedulerProxy::SubscribeCurrentThread Method

IExecutionResource::Remove Method