Utility trait for locks.
|public abstract acquire(array $options = )|
Acquires a lock that will block until released.
|public abstract release()|
Releases the lock.
|public synchronize(callable $func, array $options = )|
Execute a callable within a lock. If an exception is caught during execution of the callable the lock will first be released before throwing it.