Метод IResourceManager::RegisterScheduler

Регистрирует планировщик на диспетчере ресурсов. После регистрации планировщик должен обмениваться данными с диспетчером ресурсов, с помощью возвращаемого интерфейса ISchedulerProxy.

virtual ISchedulerProxy *RegisterScheduler(
   _Inout_ IScheduler * pScheduler,
   unsigned int version
) =0;

Параметры

  • pScheduler
    Интерфейс IScheduler для планировщика для регистрации.

  • version
    Версия интерфейса связи для связи планировщика с диспетчером ресурсов. Использование версии позволяет диспетчеру ресурсов развивать интерфейс связи, предоставляя планировщикам возможность для получения доступа к старым функциям. Планировщики, которые хотят использовать возможности диспетчера ресурсов в Visual Studio 2010, должны использовать версию CONCRT_RM_VERSION_1.

Возвращаемое значение

Интерфейс ISchedulerProxy, связанный диспетчером ресурсов с вашей планировщиком. Планировщику следует использовать этот интерфейс для взаимодействия с диспетчером ресурсов с этого момента.

Заметки

Используйте этот метод, чтобы инициировать подключение к диспетчеру ресурсов. Метод связывает интерфейс IScheduler для вашего планировщика с интерфейсом ISchedulerProxy и выдает его обратно к вам. Возвращенный интерфейс можно использовать для запроса ресурсов выполнения для использования вашим диспетчером или подписать потоки с диспетчером ресурсов. Диспетчер ресурсов будет использовать элементы политики из политики планировщика, возвращенной методом IScheduler::GetPolicy для определения типа потоков, которые потребуются планировщику для выполнения работы. Если ключ политики SchedulerKind имеет значение UmsThreadDefault и значение считывается обратно из политики, как значение UmsThreadDefault, интерфейс IScheduler, передаваемый методу, должен быть интерфейсом IUMSScheduler.

Метод выдает исключение invalid_argument, если параметр pScheduler имеет значение NULL или параметр version не является допустимой версией интерфейса связи.

Требования

Заголовок: concrtrm.h

Пространство имен: concurrency

См. также

Ссылки

Структура IResourceManager

Структура IScheduler

Структура ISchedulerProxy

Класс SchedulerPolicy

Перечисление PolicyElementKey