WebGL2RenderingContext: phương thức 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.

Note: This feature is available in Web Workers.

Phương thức WebGL2RenderingContext.clientWaitSync() của WebGL 2 API chặn và chờ một đối tượng WebGLSync trở thành signaled hoặc một thời gian chờ đã cho trôi qua.

Cú pháp

js
clientWaitSync(sync, flags, timeout)

Tham số

sync

Một đối tượng WebGLSync để chờ.

flags

Một GLbitfield chỉ định tổ hợp bitwise của các cờ điều khiển hành vi flush. Có thể là gl.SYNC_FLUSH_COMMANDS_BIT.

timeout

Một GLint64 chỉ định thời gian chờ (tính bằng nano giây) để chờ đối tượng đồng bộ trở thành signaled. Không được lớn hơn gl.MAX_CLIENT_WAIT_TIMEOUT_WEBGL.

Giá trị trả về

Một GLenum cho biết trạng thái của đối tượng đồng bộ.

  • gl.ALREADY_SIGNALED: Cho biết đối tượng đồng bộ đã được signaled khi phương thức này được gọi.
  • gl.TIMEOUT_EXPIRED: Cho biết thời gian timeout đã trôi qua và đối tượng đồng bộ không trở thành signaled.
  • gl.CONDITION_SATISFIED: Cho biết đối tượng đồng bộ đã được signaled trước khi timeout hết hạn.
  • gl.WAIT_FAILED: Cho biết một lỗi đã xảy ra trong quá trình thực thi.

Ví dụ

js
const sync = gl.fenceSync(gl.SYNC_GPU_COMMANDS_COMPLETE, 0);
const status = gl.clientWaitSync(sync, 0, 0);

Đặc tả kỹ thuật

Specification
WebGL 2.0 Specification
# 3.7.14

Tương thích trình duyệt

Xem thêm