This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.
Note: This feature is available in Web Workers.
The WebGL2RenderingContext.waitSync() method of the WebGL 2 API returns immediately, but waits on the GL server until the given WebGLSync object is signaled.
The method is a no-op in the absence of the possibility of synchronizing between multiple GL contexts.
waitSync(sync, flags, timeout)
syncA WebGLSync object on which to wait on.
flagsA GLbitfield specifying a bitwise combination of flags controlling the flushing behavior. Must be 0 (exists for extensions only).
timeoutA GLint64 specifying a timeout the server should wait before continuing. Must be gl.TIMEOUT_IGNORED.
None (undefined).
const sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0); gl.waitSync(sync, 0, gl.TIMEOUT_IGNORED);
| Specification |
|---|
| WebGL 2.0 Specification> # 3.7.14> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
waitSync |
56 | 79 | 51 | 43 | 15 | 58 | 51 | 43 | 15 | 7.0 | 58 | 15 |
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGL2RenderingContext/waitSync