[][src]Struct tokio::sync::LockGuard

pub struct LockGuard<T>(_);

A handle to a held Lock.

As long as you have this guard, you have exclusive access to the underlying T. The guard internally keeps a reference-couned pointer to the original Lock, so even if the lock goes away, the guard remains valid.

The lock is automatically released whenever the guard is dropped, at which point lock will succeed yet again.

Trait Implementations

impl<T> Debug for LockGuard<T> where
    T: Debug
[src]

impl<T> Sync for LockGuard<T> where
    T: Send + Sync
[src]

impl<T> Deref for LockGuard<T>[src]

type Target = T

The resulting type after dereferencing.

impl<T> Display for LockGuard<T> where
    T: Display
[src]

impl<T> Drop for LockGuard<T>[src]

impl<T> DerefMut for LockGuard<T>[src]

Auto Trait Implementations

impl<T> Unpin for LockGuard<T>

impl<T> Send for LockGuard<T> where
    T: Send

impl<T> !UnwindSafe for LockGuard<T>

impl<T> !RefUnwindSafe for LockGuard<T>

Blanket Implementations

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

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T> From<T> for 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> Borrow<T> for T where
    T: ?Sized
[src]

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

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

impl<T, A, P> Access<T> for P where
    A: Access<T>,
    P: Deref<Target = A>, 
[src]

type Guard = <A as Access<T>>::Guard

A guard object containing the value and keeping it alive. Read more

impl<T, A> DynAccess<T> for A where
    A: Access<T>,
    <A as Access<T>>::Guard: 'static, 
[src]