Vesta发号器源码解析——LockIdPopulator
继承了base的类,利用锁生成id
//锁定义,一个可重入锁
private Lock lock = new ReentrantLock();
//构造方法
public LockIdPopulator() {
super();
}
//生成Id
public void populateId(Timer timer, Id id, IdMeta idMeta) {
//加锁
lock.lock();
try {
//调用base的populateId方法生成ID
super.populateId(timer, id, idMeta);
} finally {
//解锁
lock.unlock();
}
}
网友评论