GPUDeviceLostInfo

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimental: これは実験的な機能です。
本番で使用する前にブラウザー互換性一覧表をチェックしてください。

安全なコンテキスト用: この機能は一部またはすべての対応しているブラウザーにおいて、安全なコンテキスト (HTTPS) でのみ利用できます。

WebGPU APIGPUDeviceLostInfo インターフェイスは、GPUDevice.lost Promise が解決した際に返されるオブジェクトを表します。これは、デバイスがなぜロストしたかの情報を提供します。

「ロスト」状態についての詳細は、GPUDevice.lost ページを参照してください。

インスタンスプロパティ

message Experimental 読取専用

なぜデバイスがロストしたのかを説明する人間向けのメッセージを提供する文字列です。

reason Experimental 読取専用

機械可読な形式でデバイスがロストした理由を定義する列挙値です。

js
async function init() {
  if (!navigator.gpu) {
    throw Error("WebGPU に対応していません。");
  }
  const adapter = await navigator.gpu.requestAdapter();
  if (!adapter) {
    throw Error("WebGPU アダプターを要求できませんでした。");
  }

  // GPUDevice を作成する
  let device = await adapter.requestDevice(descriptor);

  // lost を用いてロストしたデバイスを処理する
  device.lost.then((info) => {
    console.error(`WebGPU デバイスがロストしました: ${info.message}`);
    device = null;
    if (info.reason !== "destroyed") {
      init();
    }
  });
  // ...
}

仕様書

Specification
WebGPU
# gpudevicelostinfo

ブラウザーの互換性

BCD tables only load in the browser

関連情報