X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=docs%2Finterfaces%2FIWorkerNode.html;h=a545c9ea44ec0dce06e3c72c5d4ebb9369935174;hb=c5a7f2df1876fa07c28e7888986ba04d8fc6773b;hp=8deaf2d1d78b7dc58166a9f44e952f917a1dd60e;hpb=da631e977b488fb76cc1881c991a6fda8d8bb6e0;p=poolifier.git diff --git a/docs/interfaces/IWorkerNode.html b/docs/interfaces/IWorkerNode.html index 8deaf2d1..a545c9ea 100644 --- a/docs/interfaces/IWorkerNode.html +++ b/docs/interfaces/IWorkerNode.html @@ -1,478 +1,189 @@ -
Internal
Type of worker.
-Type of data sent to the worker. This can only be structured-cloneable data.
-Readonly
clearClears tasks queue.
-Readonly
closeCloses communication channel.
-Readonly
deleteDeletes task function worker usage statistics.
-The task function name.
-true
if the task function worker usage statistics were deleted, false
otherwise.
Readonly
dequeueReadonly
enqueueEnqueue task.
-The task to queue.
-The tasks queue size.
- -Readonly
getGets task function worker usage statistics.
-The task function name.
-The task function worker usage statistics if the task function worker usage statistics are initialized, undefined
otherwise.
Readonly
hasWhether the worker node has back pressure (i.e. its tasks queue is full).
-true
if the worker node has back pressure, false
otherwise.
Readonly
infoWorker info.
-Optional
Readonly
messageMessage channel (worker_threads only).
-Readonly
popReadonly
resetResets usage statistics.
-Optional
strategyWorker choice strategy data. +
Internal
Worker node interface.
+Type of worker.
+Type of data sent to the worker. This can only be structured-cloneable data.
+Readonly
clearClears tasks queue.
+Readonly
deleteDeletes task function worker usage statistics.
+The task function name.
+true
if the task function worker usage statistics were deleted, false
otherwise.
Readonly
dequeueDequeue last prioritized task.
+The dequeued task.
+Readonly
dequeueDequeue task.
+0
+
+The dequeued task.
+Readonly
enqueueEnqueue task.
+The tasks queue size.
+Readonly
getGets task function worker usage statistics.
+The task function name.
+The task function worker usage statistics if the task function worker usage statistics are initialized, undefined
otherwise.
Readonly
hasWhether the worker node has back pressure (i.e. its tasks queue is full).
+true
if the worker node has back pressure, false
otherwise.
Readonly
infoWorker info.
+Optional
Readonly
messageMessage channel (worker thread only).
+Readonly
registerRegisters once a worker event handler.
+The event.
+The event handler.
+Readonly
registerRegisters a worker event handler.
+The event.
+The event handler.
+Readonly
setSets tasks queue priority.
+Whether to enable tasks queue priority.
+Optional
strategyWorker choice strategy data. This is used to store data that are specific to the worker choice strategy.
-Tasks queue back pressure size. +
Tasks queue back pressure size. This is the number of tasks that can be enqueued before the worker node has back pressure.
-Readonly
tasksTasks queue size.
-The tasks queue size.
- -Readonly
unshiftPrepends a task to the tasks queue.
-The task to prepend.
-The tasks queue size.
- -Readonly
usageWorker usage statistics.
-Readonly
workerWorker.
-Appends an event listener for events whose type attribute value is type. The callback argument sets the callback that will be invoked when the event is dispatched.
-The options argument sets listener-specific options. For compatibility this can be a boolean, in which case the method behaves exactly as if the value was specified as options's capture.
-When set to true, options's capture prevents callback from being invoked when the event's eventPhase attribute value is BUBBLING_PHASE. When false (or not present), callback will not be invoked when event's eventPhase attribute value is CAPTURING_PHASE. Either way, callback will be invoked if event's eventPhase attribute value is AT_TARGET.
-When set to true, options's passive indicates that the callback will not cancel the event by invoking preventDefault(). This is used to enable performance optimizations described in § 2.8 Observing event listeners.
-When set to true, options's once indicates that the callback will only be invoked once after which the event listener will be removed.
-If an AbortSignal is passed for options's signal, then the event listener will be removed when signal is aborted.
-The event listener is appended to target's event listener list and is not appended if it has the same type, callback, and capture.
- -Optional
options: boolean | AddEventListenerOptionsRemoves the event listener in target's event listener list with the same type, callback, and options.
- -Optional
options: boolean | EventListenerOptionsGenerated using TypeDoc
Readonly
tasksTasks queue size.
+The tasks queue size.
+Readonly
terminateTerminates the worker node.
+Readonly
usageWorker usage statistics.
+Readonly
workerWorker.
+Optional
[captureRest
...args: AnyRestAlias for emitter.on(eventName, listener)
.
Rest
...args: any[]v0.1.26
+Synchronously calls each of the listeners registered for the event named eventName
, in the order they were registered, passing the supplied arguments
+to each.
Returns true
if the event had listeners, false
otherwise.
import { EventEmitter } from 'node:events';
const myEmitter = new EventEmitter();
// First listener
myEmitter.on('event', function firstListener() {
console.log('Helloooo! first listener');
});
// Second listener
myEmitter.on('event', function secondListener(arg1, arg2) {
console.log(`event with parameters ${arg1}, ${arg2} in second listener`);
});
// Third listener
myEmitter.on('event', function thirdListener(...args) {
const parameters = args.join(', ');
console.log(`event with parameters ${parameters} in third listener`);
});
console.log(myEmitter.listeners('event'));
myEmitter.emit('event', 1, 2, 3, 4, 5);
// Prints:
// [
// [Function: firstListener],
// [Function: secondListener],
// [Function: thirdListener]
// ]
// Helloooo! first listener
// event with parameters 1, 2 in second listener
// event with parameters 1, 2, 3, 4, 5 in third listener
+
+Rest
...args: AnyRestv0.1.26
+Returns an array listing the events for which the emitter has registered
+listeners. The values in the array are strings or Symbol
s.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => {});
myEE.on('bar', () => {});
const sym = Symbol('symbol');
myEE.on(sym, () => {});
console.log(myEE.eventNames());
// Prints: [ 'foo', 'bar', Symbol(symbol) ]
+
+v6.0.0
+Returns the number of listeners listening for the event named eventName
.
+If listener
is provided, it will return how many times the listener is found
+in the list of the listeners of the event.
The name of the event being listened for
+Optional
listener: FunctionThe event handler function
+v3.2.0
+Returns a copy of the array of listeners for the event named eventName
.
server.on('connection', (stream) => {
console.log('someone connected!');
});
console.log(util.inspect(server.listeners('connection')));
// Prints: [ [Function] ]
+
+v0.1.26
+Alias for emitter.removeListener()
.
Rest
...args: any[]v10.0.0
+Adds the listener
function to the end of the listeners array for the event
+named eventName
. No checks are made to see if the listener
has already
+been added. Multiple calls passing the same combination of eventName
and
+listener
will result in the listener
being added, and called, multiple times.
server.on('connection', (stream) => {
console.log('someone connected!');
});
+
+Returns a reference to the EventEmitter
, so that calls can be chained.
By default, event listeners are invoked in the order they are added. The emitter.prependListener()
method can be used as an alternative to add the
+event listener to the beginning of the listeners array.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.on('foo', () => console.log('a'));
myEE.prependListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
+
+The name of the event.
+The callback function
+Rest
...args: any[]v0.1.101
+Adds a one-time listener
function for the event named eventName
. The
+next time eventName
is triggered, this listener is removed and then invoked.
server.once('connection', (stream) => {
console.log('Ah, we have our first user!');
});
+
+Returns a reference to the EventEmitter
, so that calls can be chained.
By default, event listeners are invoked in the order they are added. The emitter.prependOnceListener()
method can be used as an alternative to add the
+event listener to the beginning of the listeners array.
import { EventEmitter } from 'node:events';
const myEE = new EventEmitter();
myEE.once('foo', () => console.log('a'));
myEE.prependOnceListener('foo', () => console.log('b'));
myEE.emit('foo');
// Prints:
// b
// a
+
+The name of the event.
+The callback function
+Rest
...args: any[]v0.3.0
+Adds the listener
function to the beginning of the listeners array for the
+event named eventName
. No checks are made to see if the listener
has
+already been added. Multiple calls passing the same combination of eventName
+and listener
will result in the listener
being added, and called, multiple times.
server.prependListener('connection', (stream) => {
console.log('someone connected!');
});
+
+Returns a reference to the EventEmitter
, so that calls can be chained.
The name of the event.
+The callback function
+Rest
...args: any[]v6.0.0
+Adds a one-timelistener
function for the event named eventName
to the beginning of the listeners array. The next time eventName
is triggered, this
+listener is removed, and then invoked.
server.prependOnceListener('connection', (stream) => {
console.log('Ah, we have our first user!');
});
+
+Returns a reference to the EventEmitter
, so that calls can be chained.
The name of the event.
+The callback function
+Rest
...args: any[]v6.0.0
+Returns a copy of the array of listeners for the event named eventName
,
+including any wrappers (such as those created by .once()
).
import { EventEmitter } from 'node:events';
const emitter = new EventEmitter();
emitter.once('log', () => console.log('log once'));
// Returns a new Array with a function `onceWrapper` which has a property
// `listener` which contains the original listener bound above
const listeners = emitter.rawListeners('log');
const logFnWrapper = listeners[0];
// Logs "log once" to the console and does not unbind the `once` event
logFnWrapper.listener();
// Logs "log once" to the console and removes the listener
logFnWrapper();
emitter.on('log', () => console.log('log persistently'));
// Will return a new Array with a single function bound by `.on()` above
const newListeners = emitter.rawListeners('log');
// Logs "log persistently" twice
newListeners[0]();
emitter.emit('log');
+
+v9.4.0
+Removes all listeners, or those of the specified eventName
.
It is bad practice to remove listeners added elsewhere in the code,
+particularly when the EventEmitter
instance was created by some other
+component or module (e.g. sockets or file streams).
Returns a reference to the EventEmitter
, so that calls can be chained.
Optional
eventName: string | symbolv0.1.26
+Removes the specified listener
from the listener array for the event named eventName
.
const callback = (stream) => {
console.log('someone connected!');
};
server.on('connection', callback);
// ...
server.removeListener('connection', callback);
+
+removeListener()
will remove, at most, one instance of a listener from the
+listener array. If any single listener has been added multiple times to the
+listener array for the specified eventName
, then removeListener()
must be
+called multiple times to remove each instance.
Once an event is emitted, all listeners attached to it at the
+time of emitting are called in order. This implies that any removeListener()
or removeAllListeners()
calls after emitting and before the last listener finishes execution
+will not remove them fromemit()
in progress. Subsequent events behave as expected.
import { EventEmitter } from 'node:events';
class MyEmitter extends EventEmitter {}
const myEmitter = new MyEmitter();
const callbackA = () => {
console.log('A');
myEmitter.removeListener('event', callbackB);
};
const callbackB = () => {
console.log('B');
};
myEmitter.on('event', callbackA);
myEmitter.on('event', callbackB);
// callbackA removes listener callbackB but it will still be called.
// Internal listener array at time of emit [callbackA, callbackB]
myEmitter.emit('event');
// Prints:
// A
// B
// callbackB is now removed.
// Internal listener array [callbackA]
myEmitter.emit('event');
// Prints:
// A
+
+Because listeners are managed using an internal array, calling this will
+change the position indices of any listener registered after the listener
+being removed. This will not impact the order in which listeners are called,
+but it means that any copies of the listener array as returned by
+the emitter.listeners()
method will need to be recreated.
When a single function has been added as a handler multiple times for a single
+event (as in the example below), removeListener()
will remove the most
+recently added instance. In the example the once('ping')
listener is removed:
import { EventEmitter } from 'node:events';
const ee = new EventEmitter();
function pong() {
console.log('pong');
}
ee.on('ping', pong);
ee.once('ping', pong);
ee.removeListener('ping', pong);
ee.emit('ping');
ee.emit('ping');
+
+Returns a reference to the EventEmitter
, so that calls can be chained.
Rest
...args: any[]v0.1.26
+By default EventEmitter
s will print a warning if more than 10
listeners are
+added for a particular event. This is a useful default that helps finding
+memory leaks. The emitter.setMaxListeners()
method allows the limit to be
+modified for this specific EventEmitter
instance. The value can be set to Infinity
(or 0
) to indicate an unlimited number of listeners.
Returns a reference to the EventEmitter
, so that calls can be chained.
v0.3.5
+
Worker node interface.
-