dislock

package module
v0.0.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 3, 2024 License: MIT Imports: 9 Imported by: 0

README

go-distributed-lock

使用方法


Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewLockServiceClient

func NewLockServiceClient(serverAddr string) service.LockServiceClient

Types

type Lock

type Lock struct {
	RetryMillisecondDur int // 尝试加锁的时间间隔 单位毫秒
	RetryMaxTimes       int // 最大加锁失败次数,超过后将强制释放锁,然后再枷锁。因为某个节点可能在加锁未释放的情况下异常退出
	Lk                  service.LockServiceClient
}

func NewLock

func NewLock(ServerAddr string, retryMillisecondDur, maxRetryTimes int) *Lock

func (*Lock) ForceUnLock

func (l *Lock) ForceUnLock(lockName string) (bool, error)

ForceUnLock

lockName 必选参数,锁的名称,可根据业务使用多种锁

func (*Lock) Lock

func (l *Lock) Lock(lockName, clientId string) (bool, error)

Lock

lockName 必选参数,锁的名称,可根据业务使用多种锁 clientId 必选参数,加锁的节点ID,分布式的每个节点ID必须唯一

func (*Lock) UnLock

func (l *Lock) UnLock(lockName, clientId string) (bool, error)

UnLock

lockName 必选参数,锁的名称,可根据业务使用多种锁 clientId 必选参数,加锁的节点ID,分布式的每个节点ID必须唯一

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL