Exposes shared memory on *nix and Windows using mapped files. This work is heavily inspired on the sharedmemory crate, but instead of being just a copy cat, typedshmem provides a typed mapping into the shared region.
typedshmem is in an early development stage, thus some major changes could be required. First, a process must create the shared region: ```rust use typedshmem as sh; use typed_shmem::error::ShMemErr;
fn main() -> Result<(), ShMemErr> {
let mut mem = sh::ShMemCfg::
// ShMem<T> implements Deref and DerefMut.
*mem = 10; //Write.
assert_eq!(*mem, 10); //Read.
loop {} //Used to keep the process alive, thus the allocated shared memory too.
Ok(())
} ```
Then, any other process can join the same region: ```rust use typedshmem as sh; use typedshmem::error::ShMemErr;
fn main() -> Result<(), ShMemErr> {
let mut mem = sh::ShMemCfg::
assert_eq!(*mem, 10); //Read.
Ok(())
} ```
Box<dyn Error>
ing everything.fork()
in *nix (not sure)?; windows?).All contributions to this project will be under Apache-2.0 license.