SharedArrayBuffer

JavaScript 🔴 Senior

Définition

ArrayBuffer partageable entre le thread principal et les Web Workers. Permet la mémoire partagée mais nécessite des Atomics pour éviter les race conditions.

Analogie

Un tableau blanc partage entre collègués : tout le monde peut écrire dessus, mais il faut un protocole pour ne pas se marcher dessus.

Exemple de code

const sab = new SharedArrayBuffer(1024);
const arr = new Int32Array(sab);
// Envoyer au worker
worker.postMessage(sab);
// Dans le worker : meme memoire

Cas d'usage

Calculs parallèles lourds entre workers, applications temps réel, WASM multithread.

Anti-pattern

Lire/écrire sans Atomics : race conditions et données corrompues.
#core#avance#performance

← → au clavier pour passer d'une fiche à l'autre