Versions in this module Expand all Collapse all v0 v0.1.0 Nov 22, 2021 Changes in this version + const EtcdLockKey + const RedisLockKey + type EtcdLock struct + func NewEtcdLock(client *v3.Client, key string, opts ...concurrency.SessionOption) (mutex *EtcdLock, err error) + func (l *EtcdLock) Lock(ctx context.Context, timeout time.Duration) (b bool, err error) + func (l *EtcdLock) Unlock(ctx context.Context) (b bool, err error) + type Lock interface + Lock func(ctx context.Context, timeout time.Duration) (bool, error) + Unlock func(ctx context.Context) (bool, error) + type RedisLock struct + func NewRedisLock(rdb *redis.Client, key string) *RedisLock + func (l *RedisLock) Lock(ctx context.Context, timeout time.Duration) (bool, error) + func (l *RedisLock) Unlock(ctx context.Context) (bool, error)