Web Worker
API del navegador para ejecutar JavaScript en un hilo secundario, separado del hilo principal. Evita que un cómputo pesado (procesado de imágenes, parsing) bloquee la interfaz.
Tres tipos: Dedicated Worker (1 página → 1 worker), Shared Worker (compartido entre varias pestañas/iframes), Service Worker (fuera de las páginas, corre en segundo plano, gestiona fetch y push). La comunicación se hace vía postMessage (structured cloning). SharedArrayBuffer + Atomics permiten memoria compartida (requieren cabeceras COOP/COEP tras Spectre). Comlink (Google) convierte postMessage en proxies. Usos modernos: inferencia de IA en el navegador (Transformers.js, ONNX Runtime Web), cómputo pesado con WebAssembly.