繁体   English   中英

如何在集群中使用用户输入(节点 JavaScript )

[英]How to use user input in Cluster(Node JavaScript )

我试图在主线程中获取输入而不是在工作线程中使用它,所以我有这段代码

Multi_processing = async() => {
if (cluster. IsMaster) {
    const name = await prompt(' input '); 
    
    console.log(`Master ${process.pid} is running`);
    for (let i = 0; i <2; i++) {
      cluster.fork();
    }
    cluster.on('exit', (worker, code, signal) => {
      console.log(`worker ${worker.process.pid} finished`);
    });
  } 
    else {
 
    console.log(name)
       
    console.log(`Worker ${process.pid} started`);
  }
}

当我尝试从 function 外部获取输入时,它获得的输入与我不想输入一次以节省时间和精力的过程一样多

通过使用Thomas Sablik Previous answer,您可以通过这种方式获得输入

Multi_processing = (() => {
  return async () => {
    if (cluster.isMaster) {
      let name = prompt("ask")
      
      console.log(`Master ${process.pid} is running`);
      for (let i = 0; i < 2; i++) {
        cluster.fork({  name : name  });
      }
      cluster.on("exit", (worker, code, signal) => {
        console.log(`worker ${worker.process.pid} finished`);
      });
    } else {
     
      console.log(process.env.name);

    }
  };
})();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM