Documentation ¶
Overview ¶
Package locker provides a mechanism for creating finer-grained locking to help free up more global locks to handle other tasks.
The implementation looks close to a sync.Mutex, however the user must provide a reference to use to refer to the underlying lock when locking and unlocking, and unlock may generate an error.
If a lock with a given name does not exist when `Lock` is called, one is created. Lock references are automatically cleaned up on `Unlock` if nothing else is waiting for the lock.
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNoSuchLock = errors.New("no such lock")
ErrNoSuchLock is returned when the requested lock does not exist
Functions ¶
This section is empty.
Types ¶
type Locker ¶
type Locker struct {
// contains filtered or unexported fields
}
Locker provides a locking mechanism based on the passed in reference name
Click to show internal directories.
Click to hide internal directories.