[][src]Struct pmdk::ObjPool

pub struct ObjPool { /* fields omitted */ }

Implementations

impl ObjPool[src]

pub fn with_size<P: AsRef<Path>, S: Into<String>>(
    path: P,
    layout: Option<S>,
    size: usize
) -> Result<Self, Error>
[src]

pub fn new<P: AsRef<Path>, S: Into<String>>(
    path: P,
    layout: Option<S>,
    obj_size: usize,
    capacity: usize
) -> Result<Self, Error>
[src]

pub fn set_capacity(
    self,
    obj_size: usize,
    data_type: u64,
    capacity: usize
) -> Result<(Self, ArrayQueue<ObjRawKey>), Error>
[src]

pub fn with_capacity<P: AsRef<Path>, S: Into<String>>(
    path: P,
    layout: Option<S>,
    obj_size: usize,
    data_type: u64,
    capacity: usize
) -> Result<(Self, ArrayQueue<ObjRawKey>), Error>
[src]

pub fn with_initial_capacity<P: AsRef<Path>, S: Into<String>>(
    path: P,
    layout: Option<S>,
    obj_size: usize,
    data_type: u64,
    capacity: usize,
    initial_capacity: usize
) -> Result<(Arc<Self>, Arc<ArrayQueue<ObjRawKey>>), Error>
[src]

pub fn update_by_rawkey<O>(
    &self,
    rkey: ObjRawKey,
    data: &[u8],
    offset: O
) -> Result<ObjRawKey, Error> where
    O: Into<Option<usize>>, 
[src]

pub fn allocate<'a>(
    &self,
    size: usize,
    data_type: u64,
    arg: impl Into<Option<&'a [u8]>>
) -> Result<ObjRawKey, Error>
[src]

pub fn obj_size_get(&self, key: ObjRawKey) -> Result<(usize, ObjRawKey), Error>[src]

pub fn remove(&self, key: ObjRawKey) -> Result<(), Error>[src]

pub unsafe fn get_by_rawkey(&self, rkey: ObjRawKey, buf: &mut [u8]) -> ObjRawKey[src]

Safety

Should be called on valid ObjRawKey only

pub fn set_rm_on_drop(&mut self, rm_pool: bool)[src]

pub fn iter(&self) -> ObjPoolIter

Important traits for ObjPoolIter

impl Iterator for ObjPoolIter type Item = ObjRawKey;
[src]

pub fn thread_arena_init(&self) -> Result<u32, Error>[src]

pub fn thread_arena_get(&self) -> Result<u32, Error>[src]

pub fn allocated_size_get(&self) -> Result<u64, Error>[src]

works only when stats are on - but it create performance impact

pub fn thread_allocated_size_get(&self, arena_id: u32) -> Result<u64, Error>[src]

does not seem to work right-now, or we do not understand what it returns

Trait Implementations

impl Debug for ObjPool[src]

impl Drop for ObjPool[src]

impl Send for ObjPool[src]

impl Sync for ObjPool[src]

Auto Trait Implementations

Blanket Implementations

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

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

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

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.