Trait rtic::Mutex[][src]

pub trait Mutex {
    type T;
    pub fn lock<R>(&mut self, f: impl FnOnce(&mut Self::T) -> R) -> R;
}

Memory safe access to shared resources

In RTIC, locks are implemented as critical sections that prevent other tasks from starting. These critical sections are implemented by temporarily increasing the dynamic priority of the current context. Entering and leaving these critical sections is always done in bounded constant time (a few instructions in bare metal contexts).

Associated Types

type T[src]

Data protected by the mutex

Loading content...

Required methods

pub fn lock<R>(&mut self, f: impl FnOnce(&mut Self::T) -> R) -> R[src]

Creates a critical section and grants temporary access to the protected data

Loading content...

Implementors

impl<'a, M> Mutex for &'a mut M where
    M: Mutex
[src]

type T = <M as Mutex>::T

impl<'a, T> Mutex for Exclusive<'a, T>[src]

type T = T

Loading content...