3 ms·
Isolated state seems like the right call. I am curious how you implemented the shared memory primitives though. I spent a while trying to get zero-copy buffer s
by storystarling 9mo ago
Isolated state seems like the right call. I am curious how you implemented the shared memory primitives though. I spent a while trying to get zero-copy buffer sharing right in a previous project and usually ended up complicating the host API significantly to guarantee safety. Are you using reference counting or some kind of ownership transfer model there?
- hanez 9mo ago• We default to isolates for safety and scaling. • Zero‑copy sharing is done with fun_shared_buffer, an off‑heap, GC‑untracked, pointer‑free block that’s immutable from the VM’s point of view. • Lifetime is managed with plain reference counting (retain/release). • For hot paths, we also support an adoption (ownership‑transfer) pattern during message passing so the sender can drop its ref without copying.