GPUDevice: uncapturederror 事件

实验性: 这是 实验性技术
在生产环境中使用此功能之前,请仔细查看 浏览器兼容性表

安全上下文: 此功能仅在 安全上下文(HTTPS)中可用,在部分或所有 支持的浏览器 中可用。

当抛出未被 GPU 错误范围观察到的错误时,GPUDevice 接口的 uncapturederror 事件会触发,以提供报告意外错误的方法。

已知错误情况应使用 pushErrorScope()popErrorScope() 处理。

语法

在诸如 addEventListener() 之类的方法中使用事件名,或设置事件处理程序属性。

js
addEventListener("uncapturederror", (event) => {});

onuncapturederror = (event) => {};

事件类型

示例

您可以使用以下内容作为全局机制来接收任何未由错误范围处理的错误并捕获它们。

js
device.addEventListener("uncapturederror", (event) => {
  // Re-surface the error.
  console.error("A WebGPU error was not captured:", event.error);

  reportErrorToServer({
    type: event.error.constructor.name,
    message: event.error.message,
  });
});

有关更多示例和信息,请参阅 WebGPU 错误处理最佳实践

规范

规范
WebGPU
# dom-gpudevice-onuncapturederror

浏览器兼容性

BCD 表仅在浏览器中加载

另请参阅