pub struct ReadOnlyRwLock<T>(/* private fields */);Expand description
Read-only wrapper on an Arc<RwLock<T>> contextual value.
Implementations§
Source§impl<T> ReadOnlyRwLock<T>
impl<T> ReadOnlyRwLock<T>
Sourcepub fn read(&self) -> RwLockReadGuard<'_, T>
pub fn read(&self) -> RwLockReadGuard<'_, T>
Locks this RwLock with shared read access, blocking the current thread until it can be acquired.
See parking_lot::RwLock::read for more details.
Sourcepub fn read_recursive(&self) -> RwLockReadGuard<'_, T>
pub fn read_recursive(&self) -> RwLockReadGuard<'_, T>
Locks this RwLock with shared read access, blocking the current thread until it can be acquired.
Unlike read, this method is guaranteed to succeed without blocking if
another read lock is held at the time of the call.
See parking_lot::RwLock::read_recursive for more details.
Sourcepub fn try_read(&self) -> Option<RwLockReadGuard<'_, T>>
pub fn try_read(&self) -> Option<RwLockReadGuard<'_, T>>
Attempts to acquire this RwLock with shared read access.
See parking_lot::RwLock::try_read for more details.
Sourcepub fn try_read_recursive(&self) -> Option<RwLockReadGuard<'_, T>>
pub fn try_read_recursive(&self) -> Option<RwLockReadGuard<'_, T>>
Attempts to acquire this RwLock with shared read access.
See parking_lot::RwLock::try_read_recursive for more details.
Trait Implementations§
Auto Trait Implementations§
impl<T> Freeze for ReadOnlyRwLock<T>
impl<T> !RefUnwindSafe for ReadOnlyRwLock<T>
impl<T> Send for ReadOnlyRwLock<T>
impl<T> Sync for ReadOnlyRwLock<T>
impl<T> Unpin for ReadOnlyRwLock<T>
impl<T> !UnwindSafe for ReadOnlyRwLock<T>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more