Structuur IUMSCompletionList

Vertegenwoordigt een UMS-lijst voor voltooiingen. Wanneer een UMS-thread wordt geblokkeerd, wordt de aangewezen planningscontext van de planner verzonden om te bepalen wat er moet worden gepland op de onderliggende hoofdmap van de virtuele processor terwijl de oorspronkelijke thread wordt geblokkeerd. Wanneer de oorspronkelijke thread wordt gedeblokkeerd, plaatst het besturingssysteem deze in de wachtrij voor de voltooiingslijst die toegankelijk is via deze interface. De taakplanner kan de voltooiingslijst opvragen binnen de aangewezen planningscontext of op een andere plek waar het naar werk zoekt.

Syntaxis

struct IUMSCompletionList;

Leden

Openbare methoden

Naam Description
IUMSCompletionList::GetUnblockNotifications Hiermee wordt een keten van IUMSUnblockNotification interfaces opgehaald die uitvoeringscontexten vertegenwoordigen waarvan de bijbehorende threadproxy's zijn gedeblokkeerd sinds de laatste keer dat deze methode is aangeroepen.

Opmerkingen

Een scheduler moet doorgaans extra voorzichtig zijn met welke acties worden uitgevoerd nadat deze interface is gebruikt om items uit de voltooiingslijst te verwijderen. De items moeten worden geplaatst in de lijst met uitvoerbare contexten van de planner en zijn over het algemeen zo snel mogelijk toegankelijk. Het is heel goed mogelijk dat een van de uit de wachtrij gehaalde items eigendom heeft gekregen van een willekeurige vergrendeling. De scheduler kan geen willekeurige functieaanroepen maken die kunnen blokkeren tussen de aanroep om items uit de wachtrij te verwijderen en de plaatsing van die items in een lijst die algemeen toegankelijk is vanuit de planner.

Overnamehiƫrarchie

IUMSCompletionList

Requirements

Koptekst: concrtrm.h

Naamruimte: concurrentie

Methode IUMSCompletionList::GetUnblockNotifications

Hiermee wordt een keten van IUMSUnblockNotification interfaces opgehaald die uitvoeringscontexten vertegenwoordigen waarvan de bijbehorende threadproxy's zijn gedeblokkeerd sinds de laatste keer dat deze methode is aangeroepen.

virtual IUMSUnblockNotification *GetUnblockNotifications() = 0;

Retourwaarde

Een keten van IUMSUnblockNotification interfaces.

Opmerkingen

De geretourneerde meldingen zijn ongeldig zodra de uitvoeringscontexten opnieuw zijn gepland.

Zie ook

concurrentie Namespace
IUMSScheduler Structuur
Structuur IUMSUnblockNotification