GPUInternalError

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 GPUInternalError-Schnittstelle der WebGPU-API beschreibt einen Anwendungsfehler, der darauf hinweist, dass eine Operation aus einem system- oder implementierungsspezifischen Grund fehlgeschlagen ist, obwohl alle Validierungsanforderungen erfüllt waren.

Sie stellt einen der Fehlertypen dar, die durch GPUDevice.popErrorScope und das uncapturederror-Ereignis angezeigt werden.

Interne Fehler treten auf, wenn in der WebGPU-Implementierung etwas passiert, das nicht durch die Validierung erfasst wurde und nicht eindeutig als Speicherplatzmangel identifizierbar war. Dies bedeutet im Allgemeinen, dass eine Operation, die Ihr Code ausgeführt hat, ein Systemlimit erreicht hat, das schwer mit den unterstützten Grenzen von WebGPU auszudrücken war. Die gleiche Operation könnte auf einem anderen Gerät erfolgreich sein. Diese Fehler können nur durch die Erstellung der Pipeline ausgelöst werden, normalerweise wenn der Shader für das Gerät zu komplex ist.

GPUError GPUInternalError

Konstruktor

GPUInternalError() Experimentell

Erstellt eine neue GPUInternalError Objektinstanz.

Instanz-Eigenschaften

Die message-Eigenschaft wird von ihrem Elternteil, GPUError, geerbt:

message Experimentell Schreibgeschützt

Ein String, der eine menschenlesbare Nachricht bereitstellt, die erklärt, warum der Fehler aufgetreten ist.

Beispiele

Das folgende Beispiel verwendet einen Fehlerbereich, um einen vermuteten Validierungsfehler zu erfassen und protokolliert ihn in der Konsole.

js
device.pushErrorScope("internal");

let module = device.createShaderModule({
  code: shader, // REALLY complex shader
});

device.popErrorScope().then((error) => {
  if (error) {
    // error is a GPUInternalError object instance
    module = null;
    console.error(`An error occurred while creating shader: ${error.message}`);
  }
});

Spezifikationen

Specification
WebGPU
# gpuinternalerror

Browser-Kompatibilität

Siehe auch