pub trait ConcreteLock {
// Required methods
fn status(&self) -> SimpleLockResult<LockStatus>;
fn try_lock(&mut self) -> SimpleLockResult<()>;
fn hang_lock(&mut self) -> SimpleLockResult<()>;
fn try_unlock(&mut self) -> SimpleLockResult<()>;
}Expand description
A full implementation of a Lock which can handle all LockBuilder configurations.
Required Methods§
Sourcefn status(&self) -> SimpleLockResult<LockStatus>
fn status(&self) -> SimpleLockResult<LockStatus>
Get the currently known lock status.
Sourcefn try_lock(&mut self) -> SimpleLockResult<()>
fn try_lock(&mut self) -> SimpleLockResult<()>
Attempt to perform the lock.
Sourcefn hang_lock(&mut self) -> SimpleLockResult<()>
fn hang_lock(&mut self) -> SimpleLockResult<()>
Attempt to perform the lock and hang until acquire.
Sourcefn try_unlock(&mut self) -> SimpleLockResult<()>
fn try_unlock(&mut self) -> SimpleLockResult<()>
Attempt to perform the unlock.
Trait Implementations§
Source§impl ConcreteLock for Box<dyn ConcreteLock>
impl ConcreteLock for Box<dyn ConcreteLock>
Source§fn status(&self) -> SimpleLockResult<LockStatus>
fn status(&self) -> SimpleLockResult<LockStatus>
Get the currently known lock status.
Source§fn try_lock(&mut self) -> SimpleLockResult<()>
fn try_lock(&mut self) -> SimpleLockResult<()>
Attempt to perform the lock.
Source§fn hang_lock(&mut self) -> SimpleLockResult<()>
fn hang_lock(&mut self) -> SimpleLockResult<()>
Attempt to perform the lock and hang until acquire.
Source§fn try_unlock(&mut self) -> SimpleLockResult<()>
fn try_unlock(&mut self) -> SimpleLockResult<()>
Attempt to perform the unlock.