pub type RwLockReadGuard<'a, T> = MappedRwLockReadGuard<'a, RawRwLock, T>;
Expand description

An RAII read lock guard returned by RwLockReadGuard::map, which can point to a subfield of the protected data.

The main difference between MappedRwLockReadGuard and RwLockReadGuard is that the former doesn’t support temporarily unlocking and re-locking, since that could introduce soundness issues if the locked object is modified by another thread.

Aliased Type§

struct RwLockReadGuard<'a, T> { /* private fields */ }

Trait Implementations§

§

impl<'a, R, T> Debug for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: Debug + 'a + ?Sized,

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<'a, R, T> Deref for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: 'a + ?Sized,

§

type Target = T

The resulting type after dereferencing.
§

fn deref(&self) -> &T

Dereferences the value.
§

impl<'a, R, T> Display for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: Display + 'a + ?Sized,

§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
§

impl<'a, R, T> Drop for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: 'a + ?Sized,

§

fn drop(&mut self)

Executes the destructor for this type. Read more
§

impl<'a, R, T> Send for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: Sync + 'a + ?Sized, <R as RawRwLock>::GuardMarker: Send,

§

impl<'a, R, T> Sync for MappedRwLockReadGuard<'a, R, T>where R: RawRwLock + 'a, T: Sync + 'a + ?Sized,