public class RedisLock extends Object
Modifier and Type | Field and Description |
---|---|
static long |
DEFAULT_TIME_OUT
默认超时时间(毫秒)
|
static int |
EXPIRE
锁的超时时间(秒),过期删除
|
static String |
LOCKED
加锁标志
|
static long |
MILLI_NANO_CONVERSION
毫秒与毫微秒的换算单位 1毫秒 = 1000000毫微秒
|
static Random |
RANDOM |
Constructor and Description |
---|
RedisLock(String key,
redis.clients.jedis.JedisPool shardedJedisPool)
This creates a RedisLock
|
Modifier and Type | Method and Description |
---|---|
boolean |
lock()
加锁
应该以:
lock();
try {
doSomething();
} finally {
unlock();
}
的方式调用
|
boolean |
lock(long timeout)
加锁
应该以:
lock();
try {
doSomething();
} finally {
unlock();
}
的方式调用
|
boolean |
lock(long timeout,
int expire)
加锁
应该以:
lock();
try {
doSomething();
} finally {
unlock();
}
的方式调用
|
void |
unlock()
解锁
无论是否加锁成功,都需要调用unlock
应该以:
lock();
try {
doSomething();
} finally {
unlock();
}
的方式调用
|
public static final String LOCKED
public static final long MILLI_NANO_CONVERSION
public static final long DEFAULT_TIME_OUT
public static final Random RANDOM
public static final int EXPIRE
public RedisLock(String key, redis.clients.jedis.JedisPool shardedJedisPool)
key
- keyshardedJedisPool
- 数据源public boolean lock(long timeout)
timeout
- 超时时间public boolean lock(long timeout, int expire)
timeout
- 超时时间expire
- 锁的超时时间(秒),过期删除public boolean lock()
public void unlock()
Copyright © 2018. All rights reserved.