Interface EventEmitterReferencingAsyncResource
interface EventEmitterReferencingAsyncResource {
eventEmitter: EventEmitterAsyncResource;
asyncId(): number;
bind<Func extends (...args: any[]) => any>(fn: Func): Func;
emitDestroy(): this;
runInAsyncScope<This, Result>(
fn: (this: This, ...args: any[]) => Result,
thisArg?: This,
...args: any[],
): Result;
triggerAsyncId(): number;
}
eventEmitter: EventEmitterAsyncResource;
asyncId(): number;
bind<Func extends (...args: any[]) => any>(fn: Func): Func;
emitDestroy(): this;
runInAsyncScope<This, Result>(
fn: (this: This, ...args: any[]) => Result,
thisArg?: This,
...args: any[],
): Result;
triggerAsyncId(): number;
}
Hierarchy (View Summary)
- AsyncResource
- EventEmitterReferencingAsyncResource
Index
Properties
Methods
Methods
asyncId
Returns number
The unique
asyncIdassigned to the resource.
bind
emitDestroy
Call all
destroyhooks. 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 thedestroyhooks will never be called.Returns this
A reference to
asyncResource.
runInAsyncScope
- runInAsyncScope<This, Result>(
fn: (this: This, ...args: any[]) => Result,
thisArg?: This,
...args: any[],
): ResultCall 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.
Type Parameters
- This
- Result
Parameters
Returns Result
triggerAsyncId
Returns number
The same
triggerAsyncIdthat is passed to theAsyncResourceconstructor.
Was this helpful?
The class
AsyncResourceis designed to be extended by the embedder's async resources. Using this, users can easily trigger the lifetime events of their own resources.The
inithook will trigger when anAsyncResourceis instantiated.The following is an overview of the
AsyncResourceAPI.