GPUDeviceLostInfo

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

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

GPUDeviceLostInfo 接口是 WebGPU API 的一部分,它表示当 GPUDevice.lost Promise 解析时返回的对象。它提供有关设备丢失原因的信息。

有关“丢失”状态的更多信息,请参阅 GPUDevice.lost 页面。

实例属性

message 实验性 只读

一个字符串,提供一个易于理解的消息,解释设备丢失的原因。

reason 实验性 只读

一个枚举值,以机器可读的方式定义设备丢失的原因。

示例

js
async function init() {
  if (!navigator.gpu) {
    throw Error("WebGPU not supported.");
  }
  const adapter = await navigator.gpu.requestAdapter();
  if (!adapter) {
    throw Error("Couldn't request WebGPU adapter.");
  }

  // Create a GPUDevice
  let device = await adapter.requestDevice(descriptor);

  // Use lost to handle lost devices
  device.lost.then((info) => {
    console.error(`WebGPU device was lost: ${info.message}`);
    device = null;
    if (info.reason !== "destroyed") {
      init();
    }
  });
  // ...
}

规范

规范
WebGPU
# gpudevicelostinfo

浏览器兼容性

BCD 表格仅在启用 JavaScript 的浏览器中加载。

另请参阅