diff options
Diffstat (limited to 'examples/mmap/2.js')
-rw-r--r-- | examples/mmap/2.js | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/examples/mmap/2.js b/examples/mmap/2.js new file mode 100644 index 000000000..c4b68bd9a --- /dev/null +++ b/examples/mmap/2.js @@ -0,0 +1,22 @@ +const map = Bun.mmap("./mmap.txt"); + +function buffer_hash(buffer) { + let hash = 0; + for (let i = 0; i < buffer.length; i++) { + hash = (hash << 5) - hash + buffer[i]; + hash |= 0; // Convert to 32bit integer + } + return hash; +} + +const decoder = new TextDecoder(); + +let hash = buffer_hash(map); +console.log(decoder.decode(map)); + +while (true) { + if (buffer_hash(map) !== hash) { + hash = buffer_hash(map); + console.log(`mmap changed to ~> ${decoder.decode(map)}`); + } +} |