From aed532945013dec94d00fe4f9abe696a4a73e509 Mon Sep 17 00:00:00 2001 From: MikeCAT Date: Wed, 18 Sep 2024 21:46:27 +0900 Subject: [PATCH] Translate GPUOutOfMemoryError --- .../gpuoutofmemoryerror/index.md | 40 ++++++++++++ files/ja/web/api/gpuoutofmemoryerror/index.md | 62 +++++++++++++++++++ 2 files changed, 102 insertions(+) create mode 100644 files/ja/web/api/gpuoutofmemoryerror/gpuoutofmemoryerror/index.md create mode 100644 files/ja/web/api/gpuoutofmemoryerror/index.md diff --git a/files/ja/web/api/gpuoutofmemoryerror/gpuoutofmemoryerror/index.md b/files/ja/web/api/gpuoutofmemoryerror/gpuoutofmemoryerror/index.md new file mode 100644 index 00000000000000..7be8cc8c88557b --- /dev/null +++ b/files/ja/web/api/gpuoutofmemoryerror/gpuoutofmemoryerror/index.md @@ -0,0 +1,40 @@ +--- +title: "GPUOutOfMemoryError: GPUOutOfMemoryError() コンストラクター" +slug: Web/API/GPUOutOfMemoryError/GPUOutOfMemoryError +l10n: + sourceCommit: 89c435da452257b944b403cc9e45036fcb22590e +--- + +{{APIRef("WebGPU API")}}{{SeeCompatTable}}{{SecureContext_Header}} + +**`GPUOutOfMemoryError()`** コンストラクターは、新しい {{domxref("GPUOutOfMemoryError")}} オブジェクトのインスタンスを生成します。 + +## 構文 + +```js-nolint +new GPUOutOfMemoryError(message) +``` + +### 引数 + +- `message` + - : なぜエラーが発生したかを説明する人間向けのメッセージを提供する文字列です。 + +## 例 + +開発者は、自分でこのコンストラクターを用いて `GPUOutOfMemoryError` オブジェクトを生成することはないでしょう。ユーザーエージェントは、{{domxref("GPUDevice.popErrorScope")}} または {{domxref("GPUDevice.uncapturederror_event", "uncapturederror")}} イベントでアウトオブメモリーエラーが浮かび上がってきた際、適切なオブジェクトを生成するためにこのコンストラクターを用います。 + +`GPUOutOfMemoryError` オブジェクトのインスタンスを扱う具体的な例は、メインの [`GPUOutOfMemoryError`](/ja/docs/Web/API/GPUOutOfMemoryError#例) のページを参照してください。 + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- [WebGPU API](/ja/docs/Web/API/WebGPU_API) +- [WebGPU Error Handling best practices](https://toji.dev/webgpu-best-practices/error-handling) diff --git a/files/ja/web/api/gpuoutofmemoryerror/index.md b/files/ja/web/api/gpuoutofmemoryerror/index.md new file mode 100644 index 00000000000000..188b1896c51853 --- /dev/null +++ b/files/ja/web/api/gpuoutofmemoryerror/index.md @@ -0,0 +1,62 @@ +--- +title: GPUOutOfMemoryError +slug: Web/API/GPUOutOfMemoryError +l10n: + sourceCommit: 6c592023efa1f762eaa1eb1f36241750626be51c +--- + +{{APIRef("WebGPU API")}}{{SeeCompatTable}}{{SecureContext_Header}} + +{{domxref("WebGPU API", "WebGPU API", "", "nocode")}} の **`GPUOutOfMemoryError`** インターフェイスは、要求された処理を完了するのに十分な空きメモリが無かったことを表すアウトオブメモリー (OOM) エラーを表現します。 + +これは、{{domxref("GPUDevice.popErrorScope")}} および {{domxref("GPUDevice.uncapturederror_event", "uncapturederror")}} イベントで浮かび上がったエラーの型の一つを表します。 + +アウトオブメモリーエラーは行儀がいいアプリケーションでは比較的まれですが、{{domxref("GPUValidationError")}} より予測が難しいです。これは、このようなエラーはアプリケーションを実行しているデバイスに依存するとともに、同時に GPU リソースを使用しているほかのアプリケーションにも依存するからです。 + +{{InheritanceDiagram}} + +## コンストラクター + +- {{domxref("GPUOutOfMemoryError.GPUOutOfMemoryError", "GPUOutOfMemoryError()")}} {{Experimental_Inline}} + - : 新しい `GPUOutOfMemoryError` オブジェクトのインスタンスを生成します。 + +## インスタンスプロパティ + +親の {{domxref("GPUError")}} から `message` プロパティを継承しています。 + +- {{domxref("GPUError.message", "message")}} {{Experimental_Inline}} {{ReadOnlyInline}} + - : なぜエラーが起きたのかを説明する人間向けのメッセージを提供する文字列です。 + +## 例 + +以下の例では、エラースコープを用いてアウトオブメモリーエラーをキャプチャし、コンソールに記録します。 + +```js +device.pushErrorScope("out-of-memory"); + +let buffer = device.createBuffer({ + size: 100_000_000_000, // 100GB; かなり大きすぎる + usage: GPUBufferUsage.COPY_SRC | GPUBufferUsage.MAP_WRITE, +}); + +device.popErrorScope().then((error) => { + if (error) { + // error は GPUOutOfMemoryError のオブジェクトインスタンス + buffer = null; + console.error(`アウトオブメモリー、バッファが大きすぎます。エラー: ${error.message}`); + } +}); +``` + +## 仕様書 + +{{Specifications}} + +## ブラウザーの互換性 + +{{Compat}} + +## 関連情報 + +- [WebGPU API](/ja/docs/Web/API/WebGPU_API) +- [WebGPU Error Handling best practices](https://toji.dev/webgpu-best-practices/error-handling)