网站地图    收藏   

主页 > 后端 > nodejs >

node多线程demo

来源:未知    时间:2023-09-25 11:27 作者:小飞侠 阅读:

[导读] Node.js是一个单线程的JavaScript运行环境,但是可以通过使用worker_threads模块来创建多线程。下面是一个使用worker_threads模块创建多线程的示例: const { Worker , isMainThread, parentPort } = require...

Node.js是一个单线程的JavaScript运行环境,但是可以通过使用worker_threads模块来创建多线程。下面是一个使用worker_threads模块创建多线程的示例:

const { Worker, isMainThread, parentPort } = require('worker_threads');

if (isMainThread) {
 // 主线程
 const worker = new Worker(__filename);
 worker.on('message', (msg) => {
   console.log('Received message from worker:', msg);
 });
 worker.on('error', (err) => {
   console.error('Error from worker:', err);
 });
 worker.on('exit', (code) => {
   console.log('Worker exited with code:', code);
 });
} else {
 // 子线程
 parentPort.postMessage('Hello from worker!');
}

这段代码创建了一个新的Worker线程,然后在主线程和Worker线程之间进行通信。在Worker线程中,通过parentPort对象来与主线程进行通信。在主线程中,可以通过监听Worker线程的'message'、'error'和'exit'事件来处理来自Worker线程的消息、错误和退出事件。


自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论