Versions in this module Expand all Collapse all v2 v2.0.1 Nov 6, 2019 Changes in this version type NetLocker + Close func() error v2.0.0 Jun 27, 2019 Changes in this version + const DRWMutexAcquireTimeout + const MaxJitter + const NoJitter + type DRWMutex struct + Name string + func NewDRWMutex(ctx context.Context, name string, clnt *Dsync) *DRWMutex + func (dm *DRWMutex) DRLocker() sync.Locker + func (dm *DRWMutex) ForceUnlock() + func (dm *DRWMutex) GetLock(id, source string, timeout time.Duration) (locked bool) + func (dm *DRWMutex) GetRLock(id, source string, timeout time.Duration) (locked bool) + func (dm *DRWMutex) Lock(id, source string) + func (dm *DRWMutex) RLock(id, source string) + func (dm *DRWMutex) RUnlock() + func (dm *DRWMutex) Unlock() + type Dsync struct + func New(rpcClnts []NetLocker, rpcOwnNode int) (*Dsync, error) + type Granted struct + type LockArgs struct + Resource string + ServerAddr string + ServiceEndpoint string + Source string + UID string + type NetLocker interface + ForceUnlock func(args LockArgs) (bool, error) + Lock func(args LockArgs) (bool, error) + RLock func(args LockArgs) (bool, error) + RUnlock func(args LockArgs) (bool, error) + ServerAddr func() string + ServiceEndpoint func() string + Unlock func(args LockArgs) (bool, error) Other modules containing this package github.com/minio/dsync github.com/minio/dsync/v3