@@ -55,7 +55,7 @@ function parallelize<T extends unknown[], U>(
5555): Promise <U []>;
5656```
5757
58- ``` ts [Example (src/steps/analyze-files.ts)]
58+ ``` ts [Example (src/steps/analyze-files.ts)]{12-15}
5959import type { Options } from ' ../types/index.js' ;
6060import { task } from ' ./analyze-files/task.js' ;
6161
@@ -83,33 +83,19 @@ export function task(filePath: string, projectRoot: string): Result {
8383```
8484
8585``` ts [Example (src/steps/analyze-files/worker.ts)]
86- import { parentPort , workerData } from ' node:worker_threads' ;
87-
88- import { runTask } from ' @codemod-utils/threads' ;
86+ import { runWorker } from ' @codemod-utils/threads' ;
8987
9088import { task } from ' ./task.js' ;
9189
92- type WorkerData = {
93- datasets: Parameters <typeof task >[];
94- };
95-
96- const { datasets } = workerData as WorkerData ;
97-
98- runTask (task , datasets )
99- .then ((result ) => {
100- parentPort ?.postMessage (result );
101- })
102- .catch ((error ) => {
103- throw error ;
104- });
90+ runWorker (task );
10591```
10692
10793:::
10894
10995
110- ### runTask {#api-run-task }
96+ ### runWorker {#api-run-worker }
11197
112- Runs a task on many datasets. The size of datasets should be moderate. Primarily used to create a worker file for a task .
98+ Runs a task on a worker.
11399
114100> [ !TIP]
115101>
@@ -122,43 +108,18 @@ Runs a task on many datasets. The size of datasets should be moderate. Primarily
122108 * @param task
123109 *
124110 * Some function to call.
125- *
126- * @param datasets
127- *
128- * An array of dataset's.
129- *
130- * @return
131- *
132- * An array of the task's return value.
133111 */
134112type Task <T extends unknown [], U > = (... dataset : T ) => U | Promise <U >;
135113
136- function runTask<T extends unknown [], U >(
137- task : Task <T , U >,
138- datasets : T [],
139- ): Promise <U []>;
114+ function runWorker<T extends unknown [], U >(task : Task <T , U >): void ;
140115```
141116
142117``` ts [Example (Worker)]{5}
143- import { parentPort , workerData } from ' node:worker_threads' ;
144-
145- import { runTask } from ' @codemod-utils/threads' ;
118+ import { runWorker } from ' @codemod-utils/threads' ;
146119
147120import { task } from ' ./task.js' ;
148121
149- type WorkerData = {
150- datasets: Parameters <typeof task >[];
151- };
152-
153- const { datasets } = workerData as WorkerData ;
154-
155- runTask (task , datasets )
156- .then ((result ) => {
157- parentPort ?.postMessage (result );
158- })
159- .catch ((error ) => {
160- throw error ;
161- });
122+ runWorker (task );
162123```
163124
164125:::
0 commit comments