Класс Scheduler

Представляет абстракцию для планировщика среды параллелизма.

class Scheduler;

Члены

Защищенные конструкторы

Имя

Описание

Конструктор Scheduler::Scheduler

Объект класса Scheduler можно создавать только с помощью методов фабрики или неявно.

Деструктор Scheduler::~Scheduler

Объект класса Scheduler неявно уничтожается, когда все внешние ссылки на него прекращают существование.

Открытые методы

Имя

Описание

Метод Scheduler::Attach

Присоединяет планировщик к контекста вызова. После выполнения возврата данным методом вызывающий контекст управляется планировщиком и планировщик становится текущим планировщиком.

Метод Scheduler::Create

Создает новый планировщик, поведение которого описанного параметром _Policy, помещает исходную ссылку на планировщик и возвращает указатель на него.

Метод Scheduler::CreateScheduleGroup

Создает новую группу расписания в планировщике.

Метод Scheduler::GetNumberOfVirtualProcessors

Возвращает текущее число виртуальных процессоров для планировщика.

Метод Scheduler::GetPolicy

Возвращает копию политики, с которой создан планировщик.

Метод Scheduler::Id

Возвращает уникальный идентификатор для планировщика.

Метод Scheduler::Reference

Увеличивает значение счетчика ссылок планировщика.

Метод Scheduler::RegisterShutdownEvent

Приводит к тому, что дескриптору объекта события Windows, переданному в параметре _Event, направляется сигнал, когда планировщик завершает работу и удаляет себя. В момент получения событием сигнала вся работа, запланированная планировщику, завершена. Через этот метод может быть зарегистрировано несколько событий завершения работы.

Метод Scheduler::Release

Уменьшает значение счетчика ссылок этого планировщика.

Метод Scheduler::ResetDefaultSchedulerPolicy

Восстанавливает политику по умолчанию планировщика на среды выполнения по умолчанию . В следующий раз, когда будет создан планировщик по умолчанию, он будет использовать параметры политики по умолчанию среды выполнения.

Метод Scheduler::ScheduleTask

Назначает легкое задание в планировщике. Облегченная задача будет размещена в группу расписаний по выбору среды выполнения.

Метод Scheduler::SetDefaultSchedulerPolicy

Позволяет использовать политику определенную пользователем для создания планировщика по умолчанию. Этот метод может вызываться только когда не существует планировщика по умолчанию внутри процесса. После установки политики по умолчанию он остается в силе до следующего допустимого вызова к методу SetDefaultSchedulerPolicy или ResetDefaultSchedulerPolicy .

Заметки

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

Среда параллелизма создаст планировщик по умолчанию на каждый процесс для выполнения параллельной работы. В дополнение к этому можно создавать собственные экземпляры планировщика и управлять им с помощью этого класса.

Иерархия наследования

Scheduler

Требования

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

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

См. также

Ссылки

Пространство имен Concurrency

Класс Scheduler

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

Основные понятия

Планировщик задач (среда выполнения с параллелизмом)