Les Worker Threads permettent un véritable parallélisme dans Node.js, parfait pour les tâches gourmandes en CPU. Allons-y.
const { Worker, isMainThread, parentPort } = require('worker_threads'); if (isMainThread) { const worker = new Worker(__filename); worker.on('message', (msg) => console.log('From worker:', msg)); worker.postMessage('Hello, Worker!'); } else { parentPort.on('message', (msg) => { console.log('From main:', msg); parentPort.postMessage('Hello, Main!'); }); }
const { Worker } = require('worker_threads'); const worker = new Worker('./worker.js'); const sharedBuffer = new SharedArrayBuffer(4); const arr = new Int32Array(sharedBuffer); arr[0] = 123; worker.postMessage({ sharedBuffer });
const { StaticPool } = require('node-worker-threads-pool'); const pool = new StaticPool({ size: 4, task: (n) => n * 2 }); async function runTasks() { const results = await Promise.all([ pool.exec(10), pool.exec(20), pool.exec(30) ]); console.log(results); // [20, 40, 60] } runTasks().catch(console.error);
Les Worker Threads brillent pour le traitement parallèle des tâches gourmandes en CPU. Utilisez-le judicieusement pour booster vos applications Node.js.
Bravo ?
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!