Worker Threads permite ejecutar JavaScript en múltiples hilos, descargando tareas CPU-intensive del event loop principal.
Cuándo usar workers
Cálculos matemáticos pesados, procesamiento de imágenes, parsing de archivos grandes, compresión, cifrado. No para operaciones I/O (ya son asíncronas).
API básica
const { Worker } = require('worker_threads');
const worker = new Worker('./worker.js', { workerData: data });
worker.on('message', result => {});
Comunicación
postMessage: copia estructurada (serializable). SharedArrayBuffer: memoria compartida. parentPort.postMessage desde el worker. Atomics para sincronización.
Pool de workers
Crear workers por tarea tiene overhead. Usa workerpool o piscina para pooling. Mantén un número fijo de workers (CPU cores - 1).

