GPUCommandEncoder: finish()-Methode
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.
Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist in Web Workers verfügbar.
Die finish()
-Methode der GPUCommandEncoder
-Schnittstelle vervollständigt die Aufzeichnung der Befehlssequenz, die auf diesem GPUCommandEncoder
kodiert wurde, und gibt einen entsprechenden GPUCommandBuffer
zurück.
Syntax
finish()
finish(descriptor)
Parameter
descriptor
Optional-
Ein Objekt, das die folgenden Eigenschaften enthalten kann:
label
Optional-
Ein String, der ein Label für den zurückgegebenen
GPUCommandBuffer
bereitstellt, das zur Identifikation verwendet werden kann, zum Beispiel inGPUError
-Meldungen oder Konsolenwarnungen.
Rückgabewert
Eine GPUCommandBuffer
-Objektinstanz.
Validierung
Die folgenden Kriterien müssen erfüllt sein, wenn finish()
aufgerufen wird, andernfalls wird ein GPUValidationError
generiert und der GPUCommandEncoder
wird ungültig:
- Es gibt keine aktiven Debug-Gruppen (d. h. gestartet über
pushDebugGroup()
). - Der
GPUCommandEncoder
befindet sich in einem offenen Zustand — das bedeutet, dass:- Keine untergeordneten
GPUComputePassEncoder
oderGPURenderPassEncoder
s aktiv sind, die nicht beendet wurden (durch Aufruf vonend()
). - Der
GPUCommandEncoder
nicht bereits mitfinish()
aufgerufen wurde (in diesem Fall kann er nicht mehr zum Kodieren von Befehlen verwendet werden).
- Keine untergeordneten
Beispiele
// ...
const commandBuffer = commandEncoder.finish();
device.queue.submit([commandBuffer]);
// ...
Spezifikationen
Specification |
---|
WebGPU # dom-gpucommandencoder-finish |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
- Die WebGPU API