Поделиться через


Структура IUMSCompletionList

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

Синтаксис

struct IUMSCompletionList;

Участники

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

Имя Описание
IUMSCompletionList::GetUnblockNotifications Извлекает цепочку IUMSUnblockNotification интерфейсов, представляющих контексты выполнения, связанные прокси-серверы потока которых разблокировались с момента последнего вызова этого метода.

Замечания

Планировщик должен быть чрезвычайно осторожным в отношении действий, выполняемых после использования этого интерфейса для извлечения элементов из списка выполненных задач. Элементы должны быть помещены в список контекстов планировщика и как можно скорее будут общедоступными. Вполне возможно, что один из извлеченных элементов получил владение произвольным замком. Планировщик не может выполнять произвольные вызовы функций, которые могут блокироваться во время извлечения элементов из очереди и размещения этих элементов в списке, доступ к которому может быть получен из планировщика.

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

IUMSCompletionList

Требования

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

Пространство имен: конкурентность

Метод IUMSCompletionList::GetUnblockNotifications

Извлекает цепочку IUMSUnblockNotification интерфейсов, представляющих контексты выполнения, связанные прокси-серверы потока которых разблокировались с момента последнего вызова этого метода.

virtual IUMSUnblockNotification *GetUnblockNotifications() = 0;

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

Цепочка IUMSUnblockNotification интерфейсов.

Замечания

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

См. также

Пространство имен параллелизм
Структура IUMSScheduler
Структура IUMSUnblockNotification