Aller au contenu
uencoder

WASM Memory

WASM Memory est l'objet de mémoire linéaire d'un module WebAssembly, un tableau d'octets contigu adressable par lequel le code WASM lit et écrit des données.

Objectif

Fournir de la mémoire de tas au code WASM avec un adressage de pointeurs façon C ; le pont d'échange de données entre WASM et JS.

Mécanisme

new WebAssembly.Memory({initial, maximum}) crée la mémoire linéaire ; grow() l'étend et la propriété buffer l'expose comme ArrayBuffer. Le code WASM adresse la mémoire avec des index i32. Elle peut s'appuyer sur un SharedArrayBuffer pour le multithreading.

Cas d’usage

  • Mémoire de tas WASM
  • Portage de code C
  • Échange de données WASM-JS

Outils associés

References