AsyncResource integration for EventEmitter
npm install eventemitter-asyncresourceIntegrates [EventEmitter][] with [AsyncResource][] for EventEmitters that
require manual async tracking.
``js
const { EventEmitterAsyncResource } = require('eventemitter-asyncresource');
// Async tracking tooling will identify this as 'Q'.
const ee = new EventEmitterAsyncResource({ name: 'Q' });
// 'foo' listeners will run in this EventEmitter’s async context.P
ee.emit('foo');
`
The EventEmitterAsyncResource class has the same methods and takes the sameEventEmitter
options as and AsyncResource themselves.
It provides an .asyncResource property that allows accessing the asyncEventEmitter
resource in question, which in turn provides the original via.eventEmitter, i.e. in the above exampleee.asyncResource.eventEmitter === ee.
[EventEmitter]: https://nodejs.org/api/events.html#events_class_eventemitterAsyncResource`]: https://nodejs.org/api/async_hooks.html#async_hooks_class_asyncresource
[