repositories
/
poolifier.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
feat: check worker inactive time only on dynamic worker
[poolifier.git]
/
src
/
pools
/
worker.ts
diff --git
a/src/pools/worker.ts
b/src/pools/worker.ts
index 86f5121dd1d73239c925c51319b6ff8bdc9b2a03..d071413b04a0c1ab5f79f3bff17ac9c78354f2d5 100644
(file)
--- a/
src/pools/worker.ts
+++ b/
src/pools/worker.ts
@@
-64,19
+64,27
@@
export interface MeasurementStatistics {
/**
* Measurement aggregate.
*/
/**
* Measurement aggregate.
*/
- aggregate: number
+ aggregate?: number
+ /**
+ * Measurement minimum.
+ */
+ minimum?: number
+ /**
+ * Measurement maximum.
+ */
+ maximum?: number
/**
* Measurement average.
*/
/**
* Measurement average.
*/
- average: number
+ average
?
: number
/**
* Measurement median.
*/
/**
* Measurement median.
*/
- median: number
+ median
?
: number
/**
* Measurement history.
*/
/**
* Measurement history.
*/
- history: CircularArray<number>
+
readonly
history: CircularArray<number>
}
/**
}
/**
@@
-85,9
+93,9
@@
export interface MeasurementStatistics {
* @internal
*/
export interface EventLoopUtilizationMeasurementStatistics {
* @internal
*/
export interface EventLoopUtilizationMeasurementStatistics {
- idle: MeasurementStatistics
- active: MeasurementStatistics
- utilization: number
+
readonly
idle: MeasurementStatistics
+
readonly
active: MeasurementStatistics
+ utilization
?
: number
}
/**
}
/**
@@
-118,6
+126,26
@@
export interface TaskStatistics {
failed: number
}
failed: number
}
+/**
+ * Worker information.
+ *
+ * @internal
+ */
+export interface WorkerInfo {
+ /**
+ * Worker id.
+ */
+ readonly id: number | undefined
+ /**
+ * Dynamic flag.
+ */
+ dynamic: boolean
+ /**
+ * Started flag.
+ */
+ started: boolean
+}
+
/**
* Worker usage statistics.
*
/**
* Worker usage statistics.
*
@@
-127,19
+155,19
@@
export interface WorkerUsage {
/**
* Tasks statistics.
*/
/**
* Tasks statistics.
*/
- tasks: TaskStatistics
+
readonly
tasks: TaskStatistics
/**
* Tasks runtime statistics.
*/
/**
* Tasks runtime statistics.
*/
- runTime: MeasurementStatistics
+ r
eadonly r
unTime: MeasurementStatistics
/**
* Tasks wait time statistics.
*/
/**
* Tasks wait time statistics.
*/
- waitTime: MeasurementStatistics
+
readonly
waitTime: MeasurementStatistics
/**
* Tasks event loop utilization statistics.
*/
/**
* Tasks event loop utilization statistics.
*/
- elu: EventLoopUtilizationMeasurementStatistics
+
readonly
elu: EventLoopUtilizationMeasurementStatistics
}
/**
}
/**
@@
-147,7
+175,12
@@
export interface WorkerUsage {
*/
export interface IWorker {
/**
*/
export interface IWorker {
/**
- * Register an event listener.
+ * Worker id.
+ */
+ readonly id?: number
+ readonly threadId?: number
+ /**
+ * Registers an event listener.
*
* @param event - The event.
* @param handler - The event handler.
*
* @param event - The event.
* @param handler - The event handler.
@@
-157,7
+190,7
@@
export interface IWorker {
((event: 'online', handler: OnlineHandler<this>) => void) &
((event: 'exit', handler: ExitHandler<this>) => void)
/**
((event: 'online', handler: OnlineHandler<this>) => void) &
((event: 'exit', handler: ExitHandler<this>) => void)
/**
- * Register a listener to the exit event that will only be performed once.
+ * Register
s
a listener to the exit event that will only be performed once.
*
* @param event - `'exit'`.
* @param handler - The exit handler.
*
* @param event - `'exit'`.
* @param handler - The exit handler.
@@
-177,6
+210,10
@@
export interface WorkerNode<Worker extends IWorker, Data = unknown> {
* Worker node worker.
*/
readonly worker: Worker
* Worker node worker.
*/
readonly worker: Worker
+ /**
+ * Worker node worker info.
+ */
+ readonly info: WorkerInfo
/**
* Worker node worker usage statistics.
*/
/**
* Worker node worker usage statistics.
*/