GPUDevice: popErrorScope() method
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Experimental: This is an experimental technology
Check the Browser compatibility table carefully before using this in production.
Secure context: This feature is available only in secure contexts (HTTPS), in some or all supporting browsers.
Note: This feature is available in Web Workers.
The popErrorScope()
method of the
GPUDevice
interface pops an existing GPU error scope from the error scope stack (originally pushed using GPUDevice.pushErrorScope()
) and returns a Promise
that resolves to an object describing the first error captured in the scope, or null
if no error occurred.
Syntax
popErrorScope()
Parameters
None.
Return value
a Promise
that resolves to an object describing the first error captured in the scope. This can be of type:
If no error occurred, it resolves to null
.
Examples
The following example uses an error scope to capture a suspected validation error, logging it to the console.
device.pushErrorScope("validation");
let sampler = device.createSampler({
maxAnisotropy: 0, // Invalid, maxAnisotropy must be at least 1.
});
device.popErrorScope().then((error) => {
if (error) {
sampler = null;
console.error(`An error occurred while creating sampler: ${error.message}`);
}
});
See WebGPU Error Handling best practices for a lot more examples and information.
Specifications
Specification |
---|
WebGPU # dom-gpudevice-poperrorscope |
Browser compatibility
BCD tables only load in the browser
See also
- The WebGPU API