Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten.Erfahre mehr über dieses Experiment.
GPUOutOfMemoryError
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Sicherer Kontext: Diese Funktion ist nur insicheren Kontexten (HTTPS) in einigen oder allenunterstützenden Browsern verfügbar.
Hinweis: Diese Funktion ist inWeb Workers verfügbar.
DieGPUOutOfMemoryError Schnittstelle derWebGPU API beschreibt einen Speicherüberlauf-Fehler (out-of-memory), der darauf hinweist, dass nicht genügend freier Speicher vorhanden war, um die angeforderte Operation abzuschließen.
Sie stellt einen der Fehlertypen dar, die durchGPUDevice.popErrorScope und dasuncapturederror-Ereignis hervorgehoben werden.
Out-of-memory-Fehler sollten in einer gut funktionierenden App relativ selten sein, sind jedoch weniger vorhersehbar alsGPUValidationErrors. Dies liegt daran, dass sie von dem Gerät abhängen, auf dem Ihre App läuft, sowie von anderen Apps, die zum Zeitpunkt der Ausführung GPU-Ressourcen nutzen.
In diesem Artikel
Konstruktor
GPUOutOfMemoryError()Erstellt eine neue Instanz des
GPUOutOfMemoryError-Objekts.
Instanz-Eigenschaften
Die Eigenschaftmessage wird von ihrem Elternteil,GPUError, geerbt:
messageExperimentellSchreibgeschütztEin String, der eine menschenlesbare Nachricht bereitstellt, die erklärt, warum der Fehler aufgetreten ist.
Beispiele
Das folgende Beispiel verwendet einen Fehlerbereich, um einen Out-of-Memory-Fehler zu erfassen und gibt ihn in der Konsole aus.
device.pushErrorScope("out-of-memory");let buffer = device.createBuffer({ size: 100_000_000_000, // 100GB; far too big usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE,});device.popErrorScope().then((error) => { if (error) { // error is a GPUOutOfMemoryError object instance buffer = null; console.error(`Out of memory, buffer too large. Error: ${error.message}`); }});Spezifikationen
| Specification |
|---|
| WebGPU> # gpuoutofmemoryerror> |