set_task_execution_resources-Funktion
Schränkt die Ausführungsressourcen, die von den internen Arbeitsthreads der Concurrency Runtime verwendet werden, auf den angegebenen Affinitätssatz ein.
Es ist nur gültig, diese Methode vor Erstellung des Ressourcen-Managers oder zwischen der Lebensdauer zweier Ressourcen-Manager aufzurufen. Sie kann mehrmals aufgerufen werden, solange der Ressourcen-Manager zum Zeitpunkt des Aufrufs nicht vorhanden ist. Nachdem eine Affinitätsgrenze eingerichtet wurde, bleibt diese bis zum nächsten gültigen Aufruf der set_task_execution_resources-Methode bestehen.
Die bereitgestellte Affinitätsmaske muss keine Teilmenge der Prozessaffinitätsmaske sein. Die Prozessaffinität wird bei Bedarf aktualisiert.
void __cdecl set_task_execution_resources(
DWORD_PTR _ProcessAffinityMask
);
void __cdecl set_task_execution_resources(
unsigned short _Count,
PGROUP_AFFINITY _PGroupAffinity
);
Parameter
_ProcessAffinityMask
Die Affinitätsmaske, dass die Concurrency Runtime-Arbeitsthreads zu eingeschränkt werden sollen. Verwenden Sie diese Methode auf einem System mit mehr als 64 Hardwarethreads nur, wenn Sie die Concurrency Runtime mit einer Teilmenge der aktuellen Gruppe des Prozessors einschränken möchten. Im Allgemeinen sollten Sie die Version der Methode, die ein Array Gruppenaffinitäten als Parameter akzeptiert, um Affinität auf Computern mit mehr als 64 Hardwarethreads einzuschränken._Count
Die Anzahl von GROUP_AFFINITY Einträge im Array angegeben durch den Parameter _PGroupAffinity._PGroupAffinity
Ein Array GROUP_AFFINITY Einträge.
Hinweise
Die Methode löst eine Ausnahme invalid_operation aus, wenn ein Ressourcen-Manager zum Zeitpunkt der aufgerufen wird und eine Ausnahme invalid_argument vorhanden ist, wenn die angegebenen Affinität eine leere Satz Ressourcen führt.
Die Version der Methode, die ein Array Gruppenaffinitäten akzeptiert als Parameter, auf Betriebssystemen mit Version Windows 7 nur verwendet werden sollte oder höher. Andernfalls wird eine Ausnahme ausgelöst. invalid_operation
Programatically, der die Prozessaffinität, ändert, nachdem diese Methode aufgerufen wurde, verursacht nicht den Ressourcenmanager, die Affinität erneut auszuwerten, die sie zu eingeschränkt wird. Daher sollten alle Änderungen an der Prozessaffinität vorgenommen werden, bevor diese Methode aufgerufen wird.
Anforderungen
Header: concrt.h
Namespace: Parallelität