WebGL2RenderingContext: Methode clientWaitSync()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
Hinweis: Dieses Feature ist verfügbar in Web Workers.
Die WebGL2RenderingContext.clientWaitSync()
Methode der
WebGL 2 API blockiert und wartet, bis ein
WebGLSync
-Objekt signalisiert wird oder ein angegebener Timeout abgelaufen ist.
Syntax
clientWaitSync(sync, flags, timeout)
Parameter
sync
-
Ein
WebGLSync
-Objekt, auf das gewartet wird. flags
-
Ein
GLbitfield
, das eine bitweise Kombination von Flags angibt, die das Flush-Verhalten steuern. Kanngl.SYNC_FLUSH_COMMANDS_BIT
sein. timeout
-
Ein
GLint64
, der einen Timeout (in Nanosekunden) angibt, für den auf das Signalisieren des Sync-Objekts gewartet wird. Darf nicht größer alsgl.MAX_CLIENT_WAIT_TIMEOUT_WEBGL
sein.
Rückgabewert
Ein GLenum
, das den Status des Sync-Objekts anzeigt.
gl.ALREADY_SIGNALED
: Zeigt an, dass das Sync-Objekt signalisiert war, als diese Methode aufgerufen wurde.gl.TIMEOUT_EXPIRED
: Zeigt an, dass dietimeout
-Zeit verstrichen ist und das Sync-Objekt nicht signalisiert wurde.gl.CONDITION_SATISFIED
: Zeigt an, dass das Sync-Objekt signalisiert wurde, bevor dertimeout
abgelaufen ist.gl.WAIT_FAILED
: Zeigt an, dass während der Ausführung ein Fehler aufgetreten ist.
Beispiele
const sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
const status = gl.clientWaitSync(sync, 0, 0);
Spezifikationen
Specification |
---|
WebGL 2.0 Specification # 3.7.14 |
Browser-Kompatibilität
BCD tables only load in the browser