Cancel Example
View this page on the UpscalerJS websiteDemonstrates how to cancel an inflight upscale
request.
Cancelling requests
The mechanism for cancelling inflight requests leverages the AbortSignal
object.
To cancel a request, create an instance of an AbortController
, and then cancel it.
import Upscaler from 'upscaler'
import imagePath from '/path/to/image.png'
const upscaler = new Upscaler()
const abortController = new AbortController()
upscaler.upscale(imagePath, {
signal: abortController.signal,
}).catch(abortError => {
console.log('UpscalerJS has been aborted', abortError)
})
// at some later point in time ...
abortController.abort()
When abort
is triggered during an upscale request, an AbortError
is thrown. (AbortError
is exported from the core UpscalerJS package.)
Cancelling all requests
UpscalerJS provides a convenience method for cancelling all inflight requests at once:
upscaler.abort()
Calling this will cancel all inflight requests (and each will emit an AbortError
).
This method can be convenient, particularly if only one upscale request is ever active at a time.