RawSpin

Struct RawSpin 

Source
pub struct RawSpin { /* private fields */ }
Expand description

A very simple spin-lock.

Consists of a single atomic boolean that is set to true when the lock is acquired and false when it is released. Locks are not fair and not ordered.

Implementations§

Source§

impl RawSpin

Source

pub const fn new() -> Self

Source

pub fn is_locked(&self) -> bool

Source

pub fn try_lock(&self) -> bool

Source

pub fn lock(&self)

Source

pub fn unlock(&self)

Trait Implementations§

Source§

impl RawMutex for RawSpin

Source§

const INIT: Self

Initial value for an unlocked mutex.
Source§

type GuardMarker = GuardSend

Marker type which determines whether a lock guard should be Send. Use one of the GuardSend or GuardNoSend helper types here.
Source§

fn is_locked(&self) -> bool

Checks whether the mutex is currently locked.
Source§

fn try_lock(&self) -> bool

Attempts to acquire this mutex without blocking. Returns true if the lock was successfully acquired and false otherwise.
Source§

fn lock(&self)

Acquires this mutex, blocking the current thread until it is able to do so.
Source§

unsafe fn unlock(&self)

Unlocks this mutex. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.