好工作"/>
确保 Nodejs Worker 准备好工作
如何确保nodejs Worker准备好工作?
index.js
const path = require('node:path')
const {Worker, BroadcastChannel} = require('node:worker_threads')
const broadcast = new BroadcastChannel('channel-worker')
const worker = new Worker(
path.join(__dirname, 'worker.js'),
{execArgv: ['--no-experimental-fetch']}
)
worker.on('online', () => {
console.log('online');
broadcast.postMessage('test')
})
setTimeout(() => {
broadcast.postMessage('test2')
}, 3000)
worker.js
const {BroadcastChannel} = require('node:worker_threads')
const broadcast = new BroadcastChannel('channel-worker')
console.log('start worker');
broadcast.onmessage = msg => {
console.log(msg.data);
}
控制台输出:
online
start worker
test2
预计在 worker.js 中触发事件
online
BroadcastChannel 已经运行
回答如下:
更多推荐
确保 Nodejs Worker 准备好工作
发布评论