This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
The WebGLSync interface is part of the WebGL 2 API and is used to synchronize activities between the GPU and the application.
When working with WebGLSync objects, the following methods of the WebGL2RenderingContext are useful:
WebGL2RenderingContext.fenceSync()WebGL2RenderingContext.deleteSync()WebGL2RenderingContext.isSync()WebGL2RenderingContext.clientWaitSync()WebGL2RenderingContext.waitSync()WebGL2RenderingContext.getSyncParameter()
Examples
Creating a WebGLSync object
in this example, gl must be a WebGL2RenderingContext. WebGLSync objects are not available in WebGL 1.
var sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
Specifications
| Specification | Status | Comment |
|---|---|---|
| WebGL 2.0 The definition of 'WebGLSync' in that specification. |
Editor's Draft | Initial definition. |
Browser compatibility
The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
| Feature | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
|---|---|---|---|---|---|---|
| Basic Support | 56 | No | 51 | No | 43 | No |
| Feature | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
|---|---|---|---|---|---|---|---|
| Basic Support | 58 | 58 | No | 51 | No | 43 | No |

