[−][src]Struct tokio::sync::Mutex
An asynchronous mutual exclusion primitive useful for protecting shared data
Each mutex has a type parameter (T) which represents the data that it is protecting. The data
can only be accessed through the RAII guards returned from lock, which
guarantees that the data is only ever accessed when the mutex is locked.
Methods
impl<T> Mutex<T>[src]
pub fn new(t: T) -> Self[src]
Creates a new lock in an unlocked state ready for use.
pub async fn lock<'_, '_>(&'_ self) -> MutexGuard<'_, T>[src]
A future that resolves on acquiring the lock and returns the MutexGuard.
pub fn try_lock(&self) -> Result<MutexGuard<T>, TryLockError>[src]
Tries to acquire the lock
pub fn into_inner(self) -> T[src]
Consumes the mutex, returning the underlying data.
Trait Implementations
impl<T: Debug> Debug for Mutex<T>[src]
impl<T> Default for Mutex<T> where
T: Default, [src]
T: Default,
impl<T> From<T> for Mutex<T>[src]
impl<T> Send for Mutex<T> where
T: Send, [src]
T: Send,
impl<T> Sync for Mutex<T> where
T: Send, [src]
T: Send,
Auto Trait Implementations
impl<T> !RefUnwindSafe for Mutex<T>
impl<T> Unpin for Mutex<T> where
T: Unpin,
T: Unpin,
impl<T> !UnwindSafe for Mutex<T>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
ⓘImportant traits for &'_ mut Ffn borrow_mut(&mut self) -> &mut T[src]
ⓘImportant traits for &'_ mut F
impl<T> From<!> for T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,