X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;ds=inline;f=docs%2Fclasses%2FThreadWorker.html;h=7e09a2bf9275fa3684fbb77600f148609d77cab1;hb=00a2ffdbeeb43b5f0f04b759b1173cbe1c751a5d;hp=a15f46f527a74b6c6733a7a591215d6ab233eb07;hpb=87f3b54969e17a64a69f3dc7ce4805493274a4f8;p=poolifier.git diff --git a/docs/classes/ThreadWorker.html b/docs/classes/ThreadWorker.html index a15f46f5..7e09a2bf 100644 --- a/docs/classes/ThreadWorker.html +++ b/docs/classes/ThreadWorker.html @@ -1,79 +1,22 @@ -
Protected
runRuns the given task function synchronously.
+Task function that will be executed.
+Input data for the task function.
+Protected
sendProtected
sendSends a message to main worker.
+The response message.
+Sets the default task function to use in the worker.
+The name of the task function to use as default task function.
+Whether the default task function was set or not.
+Static
bindBinds the given function to the current execution context.
+The function to bind to the current execution context.
+Optional
type: stringAn optional name to associate with the underlying AsyncResource
.
Optional
thisArg: ThisArgv14.8.0, v12.19.0
+Generated using TypeDoc
A thread worker used by a poolifier
+ThreadPool
.- Preparing search index...
- The search index is not available
poolifier - v3.0.9Class ThreadWorker<Data, Response>
A thread worker used by a poolifier
ThreadPool
.When this worker is inactive for more than the given
maxInactiveTime
, it will send a termination request to its main thread.If you use a
-DynamicThreadPool
the extra workers that were created will be terminated, but the minimum number of workers will be guaranteed.Author
Alessandro Pio Ardizio
- +Author
Alessandro Pio Ardizio
Since
0.0.1
-Type Parameters
---
-
-
--
-
-
Data = unknown
-Type of data this worker receives from pool's execution. This can only be structured-cloneable data.
-Response = unknown
-Type of response the worker sends back to the main thread. This can only be structured-cloneable data.
-Hierarchy
--- AbstractWorker<MessagePort, Data, Response>
-
-- ThreadWorker
-
-Index
Constructors
-Properties
-Type Parameters
Data = unknown
Type of data this worker receives from pool's execution. This can only be structured-cloneable data.
+Response = unknown
Type of response the worker sends back to the main thread. This can only be structured-cloneable data.
+Hierarchy
Index
Constructors
Properties
Accessors
-Methods
-Accessors
Methods
Constructors
-constructor
--- new
Thread Worker<Data, Response>(taskFunctions, opts?): ThreadWorker<Data, Response>
--
-
-
-
-
-
-
Constructs a new poolifier thread worker.
-Type Parameters
---
-
--
-
Data = unknown
Response = unknown
Parameters
---
-
-
--
-
-
taskFunctions: TaskFunction<Data, Response> | TaskFunctions<Data, Response>
-Task function(s) processed by the worker when the pool's
-execution
function is invoked.opts: WorkerOptions = {}
-Options for the worker.
-Returns ThreadWorker<Data, Response>
-Properties
- Interval
-Protected
Optional
activeHandler id of the
-activeInterval
worker activity check. Main
-Protected
Readonly
isWhether this is the main worker or not.
- Task Timestamp
-Protected
lastTimestamp of the last task processed by this worker.
-
-Protected
optsOptions for the worker.
-
-Private
portMessage port used to communicate with the main worker.
-
-Protected
statisticsPerformance statistics computation requirements.
- Functions
-Protected
taskTask function(s) processed by the worker when the pool's
-execution
function is invoked.Accessors
-
-Protected
id-- get id(): number
--
-
-
Worker id.
-Returns number
-Methods
-add Task Function
--- add
Task Function(name, fn): TaskFunctionOperationResult
--
-
Adds a task function to the worker. +
Constructors
constructor
Constructs a new poolifier thread worker.
+Type Parameters
Data = unknown
Response = unknown
Parameters
taskFunctions: TaskFunction<Data, Response> | TaskFunctions<Data, Response>
Task function(s) processed by the worker when the pool's
+execution
function is invoked.opts: WorkerOptions = {}
Options for the worker.
+Returns ThreadWorker<Data, Response>
Properties
Protected
Optional
activeHandler id of the
+activeInterval
worker activity check.Protected
Readonly
isWhether this is the main worker or not.
+Protected
lastTimestamp of the last task processed by this worker.
+Protected
optsOptions for the worker.
+Private
portMessage port used to communicate with the main worker.
+Protected
statisticsPerformance statistics computation requirements.
+Protected
taskTask function(s) processed by the worker when the pool's
+execution
function is invoked.Accessors
Protected
idWorker id.
+Returns number
Methods
add Task Function
Adds a task function to the worker. If a task function with the same name already exists, it is replaced.
-Parameters
---
-
-
--
-
-
name: string
-The name of the task function to add.
-fn: TaskFunction<Data, Response>
-The task function to add.
-Returns TaskFunctionOperationResult
Whether the task function was added or not.
- -async Id
--- async
Id(): number
--
-
Returns number
The unique
- -asyncId
assigned to the resource.bind
--- bind<Func>(fn): Func
--
-
-
-
-
-
-
-
Binds the given function to execute to this
-AsyncResource
's scope.Type Parameters
---
-
Func extends ((...args) => any)
Parameters
---
-
-
fn: Func
-The function to bind to the current
-AsyncResource
.Returns Func
-Since
v14.8.0, v12.19.0
-emit Destroy
--- emit
Destroy(): ThreadWorker<Data, Response>
--
-
Call all
destroy
hooks. This should only ever be called once. An error will +Parameters
name: string
The name of the task function to add.
+fn: TaskFunction<Data, Response>
The task function to add.
+Returns TaskFunctionOperationResult
Whether the task function was added or not.
+async Id
Returns number
The unique
+asyncId
assigned to the resource.bind
Binds the given function to execute to this
+AsyncResource
's scope.Type Parameters
Func extends ((...args) => any)
Parameters
fn: Func
The function to bind to the current
+AsyncResource
.Returns Func
Since
v14.8.0, v12.19.0
+emit Destroy
Call all
-destroy
hooks. 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 thedestroy
hooks will never be called.Returns ThreadWorker<Data, Response>
A reference to
- -asyncResource
. Main Worker
-Protected
get-- get
Main Worker(): MessagePort
--
-
-
-
Returns the main worker.
-Returns MessagePort
Reference to the main worker.
- -Throws
https://nodejs.org/api/errors.html#class-error If the main worker is not set.
- Error
-Protected
handle-- handle
Error(error): string
--
-
-
-
-
Handles an error and convert it to a string so it can be sent back to the main worker.
-Parameters
---
-
-
error: string | Error
-The error raised by the worker.
-Returns string
The error message.
- - Kill Message
-Protected
handle-- handle
Kill Message(message): void
--
-
-
-
-
Handles a kill message sent by the main worker.
-Parameters
---
-
message: MessageValue<Data, unknown>
Returns void
- Ready Message
-Protected
handle-- handle
Ready Message(message): void
--
-
-
-
-
Handles the ready message sent by the main worker.
-Parameters
---
-
-
message: MessageValue<Data, unknown>
-The ready message.
-Returns void
- Task Function Operation Message
-Protected
handle-- handle
Task Function Operation Message(message): void
--
-
-
-
Parameters
---
-
message: MessageValue<Data, unknown>
Returns void
has Task Function
--- has
Task Function(name): TaskFunctionOperationResult
--
-
-
-
-
Checks if the worker has a task function with the given name.
-Parameters
---
-
-
name: string
-The name of the task function to check.
-Returns TaskFunctionOperationResult
Whether the worker has a task function with the given name or not.
- -list Task Function Names
--- list
Task Function Names(): string[]
--
-
-
Lists the names of the worker's task functions.
-Returns string[]
The names of the worker's task functions.
- - Listener
-Protected
message-- message
Listener(message): void
--
-
-
-
-
Worker message listener.
-Parameters
---
-
-
message: MessageValue<Data, unknown>
-The received message.
-Returns void
-remove Task Function
--- remove
Task Function(name): TaskFunctionOperationResult
--
-
-
-
-
Removes a task function from the worker.
-Parameters
---
-
-
name: string
-The name of the task function to remove.
-Returns TaskFunctionOperationResult
Whether the task function existed and was removed or not.
- -
-Protected
run-- run(task): void
--
-
-
-
-
Runs the given task.
-Parameters
---
-
-
task: Task<Data>
-The task to execute.
-Returns void
- Async
-Protected
run-- run
Async(fn, task): void
--
-
-
-
-
Runs the given task function asynchronously.
-Parameters
---
-
-
--
-
-
fn: TaskAsyncFunction<Data, Response>
-Task function that will be executed.
-task: Task<Data>
-Input data for the task function.
-Returns void
-run In Async Scope
--- run
In Async Scope<This, Result>(fn, thisArg?, ...args): Result
--
-
Call the provided function with the provided arguments in the execution context +
Returns ThreadWorker<Data, Response>
A reference to
+asyncResource
.Protected
getReturns the main worker.
+Returns MessagePort
Reference to the main worker.
+Throws
https://nodejs.org/api/errors.html#class-error If the main worker is not set.
+Protected
handleHandles an error and convert it to a string so it can be sent back to the main worker.
+Parameters
error: string | Error
The error raised by the worker.
+Returns string
The error message.
+Protected
handleHandles a kill message sent by the main worker.
+Parameters
message: MessageValue<Data, unknown>
Returns void
Protected
handleHandles the ready message sent by the main worker.
+Parameters
message: MessageValue<Data, unknown>
The ready message.
+Returns void
Protected
handleParameters
message: MessageValue<Data, unknown>
Returns void
has Task Function
Checks if the worker has a task function with the given name.
+Parameters
name: string
The name of the task function to check.
+Returns TaskFunctionOperationResult
Whether the worker has a task function with the given name or not.
+list Task Function Names
Lists the names of the worker's task functions.
+Returns string[]
The names of the worker's task functions.
+Protected
messageWorker message listener.
+Parameters
message: MessageValue<Data, unknown>
The received message.
+Returns void
remove Task Function
Removes a task function from the worker.
+Parameters
name: string
The name of the task function to remove.
+Returns TaskFunctionOperationResult
Whether the task function existed and was removed or not.
+Protected
runRuns the given task.
+Parameters
task: Task<Data>
The task to execute.
+Returns void
Protected
runRuns the given task function asynchronously.
+Parameters
fn: TaskAsyncFunction<Data, Response>
Task function that will be executed.
+task: Task<Data>
Input data for the task function.
+Returns void
run In Async Scope
Call 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
---
-
-
-
--
-
-
--
-
-
fn: ((this, ...args) => Result)
-The function to call in the execution context of this async resource.
---
-
-- (this, ...args): Result
--
-
-
-
Parameters
---
-
--
-
this: This
Rest
...args: any[]Returns Result
-Optional
thisArg: ThisThe receiver to be used for the function call.
-
-Rest
...args: any[]Optional arguments to pass to the function.
-Returns Result
-Since
v9.6.0
- Sync
-Protected
run-- run
Sync(fn, task): void
--
-
-
-
-
Runs the given task function synchronously.
-Parameters
---
-
-
--
-
-
fn: TaskSyncFunction<Data, Response>
-Task function that will be executed.
-task: Task<Data>
-Input data for the task function.
-Returns void
- Task Function Names To Main Worker
-Protected
send-- send
Task Function Names To Main Worker(): void
--
-
-
Sends task function names to the main worker.
-Returns void
- To Main Worker
-Protected
send-- send
To Main Worker(message): void
--
-
-
-
-
Sends a message to main worker.
-Parameters
---
-
-
message: MessageValue<Response, unknown>
-The response message.
-Returns void
-set Default Task Function
--- set
Default Task Function(name): TaskFunctionOperationResult
--
-
-
-
-
Sets the default task function to use in the worker.
-Parameters
---
-
-
name: string
-The name of the task function to use as default task function.
-Returns TaskFunctionOperationResult
Whether the default task function was set or not.
- -trigger Async Id
--- trigger
Async Id(): number
--
-
Returns number
The same
- -triggerAsyncId
that is passed to theAsyncResource
constructor.
-Static
bind-- bind<Func, ThisArg>(fn, type?, thisArg?): Func
--
-
-
-
-
-
-
-
Binds the given function to the current execution context.
-Type Parameters
---
-
--
-
Func extends ((this, ...args) => any)
ThisArg
Parameters
---
-
-
--
-
-
--
-
fn: Func
-The function to bind to the current execution context.
-
-Optional
type: stringAn optional name to associate with the underlying
-AsyncResource
.Optional
thisArg: ThisArgReturns Func
-Since
v14.8.0, v12.19.0
--
-Settings
Member Visibility
Theme
-
-On This Page
-- constructor
-- active
Interval
-- is
Main
-- last
Task Timestamp
-- opts
-- port
-- statistics
-- task
Functions
-- id
-- add
Task Function
-- async
Id
-- bind
-- emit
Destroy
-- get
Main Worker
-- handle
Error
-- handle
Kill Message
-- handle
Ready Message
-- handle
Task Function Operation Message
-- has
Task Function
-- list
Task Function Names
-- message
Listener
-- remove
Task Function
-- run
-- run
Async
-- run
In Async Scope
-- run
Sync
-- send
Task Function Names To Main Worker
-- send
To Main Worker
-- set
Default Task Function
-- trigger
Async Id
-- bind
Generated using TypeDoc
Type Parameters
This
Result
Parameters
fn: ((this, ...args) => Result)
The function to call in the execution context of this async resource.
+Parameters
this: This
Rest
...args: any[]Returns Result
Optional
thisArg: ThisThe receiver to be used for the function call.
+Rest
...args: any[]Optional arguments to pass to the function.
+Returns Result
Since
v9.6.0
+