X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fpools%2Fworker.ts;h=20fac7ccce33fe1b32ac16874b1d721758cef137;hb=8a1260a3eca1f3fc72c9db255627daccfa7616bc;hp=e0636d9920db6ddf4e5d7a20ea412cfbee612b04;hpb=83fa0a36c7d67362593915f3b19867f8fbbcbcce;p=poolifier.git diff --git a/src/pools/worker.ts b/src/pools/worker.ts index e0636d99..20fac7cc 100644 --- a/src/pools/worker.ts +++ b/src/pools/worker.ts @@ -65,6 +65,14 @@ export interface MeasurementStatistics { * Measurement aggregate. */ aggregate: number + /** + * Measurement minimum. + */ + minimum: number + /** + * Measurement maximum. + */ + maximum: number /** * Measurement average. */ @@ -76,7 +84,7 @@ export interface MeasurementStatistics { /** * Measurement history. */ - history: CircularArray + readonly history: CircularArray } /** @@ -85,9 +93,9 @@ export interface MeasurementStatistics { * @internal */ export interface EventLoopUtilizationMeasurementStatistics { - idle: MeasurementStatistics - active: MeasurementStatistics - utilization: number + readonly idle: MeasurementStatistics + readonly active: MeasurementStatistics + utilization?: number } /** @@ -127,11 +135,19 @@ export interface WorkerInfo { /** * Worker id. */ - id: number | undefined + readonly id: number | undefined + /** + * Dynamic flag. + */ + dynamic: boolean /** * Started flag. */ started: boolean + /** + * Shared buffer. + */ + readonly sharedBuffer?: Int32Array } /** @@ -143,19 +159,19 @@ export interface WorkerUsage { /** * Tasks statistics. */ - tasks: TaskStatistics + readonly tasks: TaskStatistics /** * Tasks runtime statistics. */ - runTime: MeasurementStatistics + readonly runTime: MeasurementStatistics /** * Tasks wait time statistics. */ - waitTime: MeasurementStatistics + readonly waitTime: MeasurementStatistics /** * Tasks event loop utilization statistics. */ - elu: EventLoopUtilizationMeasurementStatistics + readonly elu: EventLoopUtilizationMeasurementStatistics } /** @@ -165,10 +181,10 @@ export interface IWorker { /** * Worker id. */ - id?: number - threadId?: number + readonly id?: number + readonly threadId?: number /** - * Register an event listener. + * Registers an event listener. * * @param event - The event. * @param handler - The event handler. @@ -178,7 +194,7 @@ export interface IWorker { ((event: 'online', handler: OnlineHandler) => void) & ((event: 'exit', handler: ExitHandler) => void) /** - * Register a listener to the exit event that will only be performed once. + * Registers a listener to the exit event that will only be performed once. * * @param event - `'exit'`. * @param handler - The exit handler. @@ -201,7 +217,7 @@ export interface WorkerNode { /** * Worker node worker info. */ - info: WorkerInfo + readonly info: WorkerInfo /** * Worker node worker usage statistics. */