AsyncResource() is meant to be extended. Instantiating a new AsyncResource() also triggers init. If triggerAsyncId is omitted then async_hook.executionAsyncId() is used.
The type of async event.
Optional
triggerAsyncId: number | AsyncResourceOptionsThe ID of the execution context that created
this async event (default: executionAsyncId()
), or an
AsyncResourceOptions object (since v9.3.0)
Call all destroy
hooks. This should only ever be called once. An error will
be thrown if it is called more than once. This must be manually called. If
the resource is left to be collected by the GC then the destroy
hooks will
never be called.
A reference to asyncResource
.
Call the provided function with the provided arguments in the execution context of the async resource. This will establish the context, trigger the AsyncHooks before callbacks, call the function, trigger the AsyncHooks after callbacks, and then restore the original execution context.
The function to call in the execution context of this async resource.
Optional
thisArg: ThisThe receiver to be used for the function call.
Rest
...args: any[]Optional arguments to pass to the function.
Static
bind
The class
AsyncResource
is designed to be extended by the embedder's async resources. Using this, users can easily trigger the lifetime events of their own resources.The
init
hook will trigger when anAsyncResource
is instantiated.The following is an overview of the
AsyncResource
API.