Trait concurrency_traits::TimeoutMutex[][src]

pub trait TimeoutMutex<'a>: TryMutex<'a> {
    fn lock_timeout(&'a self, timeout: Duration) -> Option<Self::Guard>;
}

A mutex that can timeout for locking

Implementation

It is recommended to implement TimeoutMutexSized if the implement-ee can be sized.

Required methods

fn lock_timeout(&'a self, timeout: Duration) -> Option<Self::Guard>[src]

Locks the mutex blocking for timeout or until locked

Loading content...

Implementations on Foreign Types

impl<'__a, 'a, T: ?Sized> TimeoutMutex<'__a> for &'a T where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, 'a, T: ?Sized> TimeoutMutex<'__a> for &'a mut T where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, T: ?Sized> TimeoutMutex<'__a> for ManuallyDrop<T> where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, T> TimeoutMutex<'__a> for AssertUnwindSafe<T> where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, T: ?Sized> TimeoutMutex<'__a> for Rc<T> where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, T: ?Sized> TimeoutMutex<'__a> for Arc<T> where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, T: ?Sized> TimeoutMutex<'__a> for Box<T> where
    T: TimeoutMutex<'__a>, 
[src]

impl<'__a, 'a, T> TimeoutMutex<'__a> for Cow<'a, T> where
    T: TimeoutMutex<'__a> + Clone
[src]

impl<'a, T> TimeoutMutex<'a> for Pin<T> where
    T: Deref,
    T::Target: TimeoutMutex<'a>, 
[src]

Loading content...

Implementors

impl<'a, T, M> TimeoutMutex<'a> for CustomMutex<T, M> where
    T: 'a,
    M: RawTimeoutMutex + 'a, 
[src]

Loading content...