IResourceManager Structure
Collapse the table of content
Expand the table of content

IResourceManager Structure


An interface to the Concurrency Runtime's Resource Manager. This is the interface by which schedulers communicate with the Resource Manager.

struct IResourceManager;



IResourceManager::OSVersion Enumeration

An enumerated type that represents the operating system version.



IResourceManager::CreateNodeTopology Method

Present only in debug builds of the runtime, this method is a test hook designed to facilitate testing of the Resource Manager on varying hardware topologies, without requiring actual hardware matching the configuration. With retail builds of the runtime, this method will return without performing any action.

IResourceManager::GetAvailableNodeCount Method

Returns the number of nodes available to the Resource Manager.

IResourceManager::GetFirstNode Method

Returns the first node in enumeration order as defined by the Resource Manager.

IResourceManager::Reference Method

Increments the reference count on the Resource Manager instance.

IResourceManager::RegisterScheduler Method

Registers a scheduler with the Resource Manager. Once the scheduler is registered, it should communicate with the Resource Manager using the ISchedulerProxy interface that is returned.

IResourceManager::Release Method

Decrements the reference count on the Resource Manager instance. The Resource Manager is destroyed when its reference count goes to 0.

Use the CreateResourceManager function to obtain an interface to the singleton Resource Manager instance. The method increments a reference count on the Resource Manager, and you should invoke the IResourceManager::Release method to release the reference when you are done with Resource Manager. Typically, each scheduler you create will invoke this method during creation, and release the reference to the Resource Manager after it shuts down.



Header: concrtrm.h

Namespace: concurrency

© 2016 Microsoft