[][src]Struct ipmpsc::SharedRingBuffer

pub struct SharedRingBuffer { /* fields omitted */ }

Represents a file-backed shared memory ring buffer, suitable for constructing a Receiver or Sender.

Note that it is possible to create multiple SharedRingBuffers for a given path in a single process, but it is much more efficient to clone an exisiting instance than construct one from scratch using one of the constructors.

Methods

impl SharedRingBuffer[src]

pub fn create(path: &str, size_in_bytes: u32) -> Result<SharedRingBuffer, Error>[src]

Creates a new SharedRingBuffer backed by a file with the specified name.

The file will be created if it does not already exist or truncated otherwise.

Once this function completes successfully, the same path may be used to create one or more corresponding instances in other processes using the SharedRingBuffer::open method.

pub fn create_temp(
    size_in_bytes: u32
) -> Result<(String, SharedRingBuffer), Error>
[src]

Creates a new SharedRingBuffer backed by a temporary file which will be deleted when the SharedRingBuffer is dropped.

The name of the file is returned along with the SharedRingBuffer and may be used to create one or more corresponding instances in other processes using the SharedRingBuffer::open method.

pub fn open(path: &str) -> Result<SharedRingBuffer, Error>[src]

Creates a new SharedRingBuffer backed by a file with the specified name.

The file must already exist and have been initialized by a call to SharedRingBuffer::create or SharedRingBuffer::create_temp.

Trait Implementations

impl Sync for SharedRingBuffer[src]

impl Clone for SharedRingBuffer[src]

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Send for SharedRingBuffer[src]

Auto Trait Implementations

Blanket Implementations

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,