Changes for version 0.01 - 2026-04-05
- Initial release
- 11 type variants: I8/U8/I16/U16/I32/U32/I64/U64/F32/F64/Str
- File-backed, anonymous, and memfd constructors
- Lock-free atomic get/set for numeric types
- Atomic counters: incr/decr/add/cas/cmpxchg
- Atomic bitwise: and/or/xor
- Seqlock-guarded bulk: slice/set_slice/get_raw/set_raw/fill/clear
- Batch atomic add_slice
- Zero-copy as_scalar (mmap-aliased scalar ref)
- Raw pointer access: ptr/ptr_at
- Explicit locking: lock_wr/unlock_wr/lock_rd/unlock_rd
- fd passing: new_memfd/new_from_fd/fd
- eventfd notifications: create_eventfd/attach_eventfd/notify/wait_notify
- Futex-based rwlock with stale-lock recovery
- Keyword API via XS::Parse::Keyword
Modules
Type-specialized shared-memory buffers for multiprocess access
Provides
in lib/Data/Buffer/Shared/F32.pm
in lib/Data/Buffer/Shared/F64.pm
in lib/Data/Buffer/Shared/I16.pm
in lib/Data/Buffer/Shared/I32.pm
in lib/Data/Buffer/Shared/I64.pm
in lib/Data/Buffer/Shared/I8.pm
in lib/Data/Buffer/Shared/Str.pm
in lib/Data/Buffer/Shared/U16.pm
in lib/Data/Buffer/Shared/U32.pm
in lib/Data/Buffer/Shared/U64.pm
in lib/Data/Buffer/Shared/U8.pm
Examples
- eg/audio_waveform.pl
- eg/basic.pl
- eg/bitflags.pl
- eg/double_buffer.pl
- eg/ev_eventfd.pl
- eg/eventfd_notify.pl
- eg/gl_compute_shader.pl
- eg/gl_indexed_mesh.pl
- eg/gl_particle_sim.pl
- eg/gl_ssbo.pl
- eg/gl_texture_upload.pl
- eg/gl_transform_feedback.pl
- eg/gl_uniform_buffer.pl
- eg/histogram.pl
- eg/memfd_share.pl
- eg/metrics.pl
- eg/multiprocess.pl
- eg/opengl_vbo.pl
- eg/pdl_image_pipeline.pl
- eg/pdl_interop.pl
- eg/persistent_reopen.pl
- eg/point_cloud.pl
- eg/ring_buffer.pl
- eg/semaphore.pl
- eg/shared_config.pl
- eg/shared_log.pl