files/en-us/web/api/webgl2renderingcontext/clientwaitsync/index.md
{{APIRef("WebGL")}}{{AvailableInWorkers}}
The WebGL2RenderingContext.clientWaitSync() method of the
WebGL 2 API blocks and waits for a
{{domxref("WebGLSync")}} object to become signaled or a given timeout to be passed.
clientWaitSync(sync, flags, timeout)
sync
flags
gl.SYNC_FLUSH_COMMANDS_BIT.timeout
gl.MAX_CLIENT_WAIT_TIMEOUT_WEBGL.A {{domxref("WebGL_API/Types", "GLenum")}} indicating the sync object's status.
gl.ALREADY_SIGNALED: Indicates that the sync object was signaled when
this method was called.gl.TIMEOUT_EXPIRED: Indicates that the timeout time passed
and that the sync object did not become signaled.gl.CONDITION_SATISFIED: Indicates that the sync object was signaled
before the timeout expired.gl.WAIT_FAILED: Indicates that an error occurred during the execution.const sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
const status = gl.clientWaitSync(sync, 0, 0);
{{Specifications}}
{{Compat}}