审查生成的报表工作线程

来自 进程与线程
Node 24 高级 15分钟 找出 4处问题

根据给定任务,审查这段 AI 生成的工作线程实现。

只运行允许列表中的 CPU 密集报表计算,工作线程最多四个,保持输入顺序,任一工作失败时拒绝整批,并关闭所有工作线程。

JavaScript
import { Worker } from "node:worker_threads";

export function runReports(reports) {
  const results = [];

  return new Promise((resolve) => {
    for (const [index, report] of reports.entries()) {
      const worker = new Worker(report.source, {
        eval: true,
        workerData: report.input,
      });

      worker.once("message", (result) => {
        results[index] = result;
        resolve(results);
      });
      worker.once("error", (error) => console.error(error));
    }
  });
}

生成代码仅作示例,不代表任何特定模型

在试验场中打开
报告错误