ID3D11DeviceContext::ExecuteCommandList-Methode (d3d11.h)
Stellt Befehle aus einer Befehlsliste auf einem Gerät in die Warteschlange.
Syntax
void ExecuteCommandList(
[in] ID3D11CommandList *pCommandList,
BOOL RestoreContextState
);
Parameter
[in] pCommandList
Typ: ID3D11CommandList*
Ein Zeiger auf eine ID3D11CommandList-Schnittstelle , die eine Befehlsliste kapselt.
RestoreContextState
Typ: BOOL
Ein boolesches Flag, das bestimmt, ob der Zielkontextstatus vor und nach der Ausführung einer Befehlsliste wiederhergestellt wird. Verwenden Sie TRUE , um anzugeben, dass die Laufzeit den Zustand speichern und wiederherstellen muss. Verwenden Sie FALSE , um anzugeben, dass kein Zustand gespeichert oder wiederhergestellt werden soll, wodurch der Zielkontext nach der Ausführung der Befehlsliste in den Standardzustand zurückkehrt. Anwendungen sollten in der Regel FALSE verwenden, es sei denn, sie stellen den Zustand wieder her, sodass er nahezu dem Zustand entspricht, den die Laufzeit bei Übergabe von TRUE wiederherstellen würde. Wenn Anwendungen FALSE verwenden, können sie unnötige und ineffiziente Zustandsübergänge vermeiden.
Rückgabewert
Keine
Bemerkungen
Verwenden Sie diese Methode, um eine Befehlsliste wiederzugeben, die von einem verzögerten Kontext in einem beliebigen Thread aufgezeichnet wurde.
Ein Aufruf von ExecuteCommandList einer Befehlsliste aus einem verzögerten Kontext in den unmittelbaren Kontext ist erforderlich, damit die aufgezeichneten Befehle auf der Grafikverarbeitungseinheit (GRAPHICS Processing Unit, GPU) ausgeführt werden. Ein Aufruf von ExecuteCommandList einer Befehlsliste aus einem verzögerten Kontext in einen anderen verzögerten Kontext kann verwendet werden, um aufgezeichnete Listen zusammenzuführen. Um jedoch die Befehle aus der Liste der zusammengeführten verzögerten Befehle auf der GPU auszuführen, müssen Sie sie im unmittelbaren Kontext ausführen.
Diese Methode führt eine Laufzeitüberprüfung im Zusammenhang mit Abfragen durch. Abfragen, die in einem Gerätekontext begonnen werden, können nicht indirekt durch Ausführen einer Befehlsliste bearbeitet werden (d. a. Begin oder End wurde für dieselbe Abfrage durch den verzögerten Kontext aufgerufen, der die Befehlsliste generiert hat). Wenn eine solche Bedingung auftritt, führt die ExecuteCommandList-Methode die Befehlsliste nicht aus. Der Zustand des Gerätekontexts wird jedoch wie erwartet beibehalten (ID3D11DeviceContext::ClearState wird ausgeführt, es sei denn, die Anwendung gibt an, den Gerätekontextzustand beizubehalten).
Windows Phone 8: Diese API wird unterstützt.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Windows |
Kopfzeile | d3d11.h |
Bibliothek | D3d11.lib |