pub struct BrwLockPi<Class: LockClass> { /* private fields */ }Expand description
A priority-inheriting reader-writer lock.
Implementations§
Source§impl<Class: LockClass> BrwLockPi<Class>
impl<Class: LockClass> BrwLockPi<Class>
Sourcepub fn init() -> impl PinInit<Self, Infallible>
pub fn init() -> impl PinInit<Self, Infallible>
Safe dynamic initialization inside pin context.
Sourcepub fn read_lock(
&self,
) -> impl PinInit<BrwLockPiReadGuard<'_, Class>, Infallible>
pub fn read_lock( &self, ) -> impl PinInit<BrwLockPiReadGuard<'_, Class>, Infallible>
Acquire the read lock and return a stack-pinned validation guard.
Sourcepub fn write_lock(
&self,
) -> impl PinInit<BrwLockPiWriteGuard<'_, Class>, Infallible>
pub fn write_lock( &self, ) -> impl PinInit<BrwLockPiWriteGuard<'_, Class>, Infallible>
Acquire the write lock and return a stack-pinned validation guard.
Trait Implementations§
impl<Class: LockClass> Send for BrwLockPi<Class>
impl<Class: LockClass> Sync for BrwLockPi<Class>
Auto Trait Implementations§
impl<Class> !Freeze for BrwLockPi<Class>
impl<Class> !RefUnwindSafe for BrwLockPi<Class>
impl<Class> UnsafeUnpin for BrwLockPi<Class>
impl<Class> UnwindSafe for BrwLockPi<Class>where
Class: UnwindSafe,
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T, U> Into<U> for Twhere
U: From<T>,
impl<T, U> Into<U> for Twhere
U: From<T>,
Source§impl<T> PinInit<T> for T
impl<T> PinInit<T> for T
Source§unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), Infallible>
unsafe fn __pinned_init(self, slot: *mut T) -> Result<(), Infallible>
Initializes
slot. Read moreSource§fn pin_chain<F>(self, f: F) -> ChainPinInit<Self, F, T, E>where
F: FnOnce(Pin<&mut T>) -> Result<(), E>,
fn pin_chain<F>(self, f: F) -> ChainPinInit<Self, F, T, E>where
F: FnOnce(Pin<&mut T>) -> Result<(), E>,
First initializes the value using
self then calls the function f with the initialized
value. Read more