timestamper.java
来自「好东西,hibernate-3.2.0,他是一开元的树杖hibernate-3.」· Java 代码 · 共 38 行
JAVA
38 行
//$Id: Timestamper.java 3890 2004-06-03 16:31:32Z steveebersole $
package org.hibernate.cache;
/**
* Generates increasing identifiers (in a single VM only).
* Not valid across multiple VMs. Identifiers are not necessarily
* strictly increasing, but usually are.
*/
public final class Timestamper {
private static short counter = 0;
private static long time;
private static final int BIN_DIGITS = 12;
public static final short ONE_MS = 1<<BIN_DIGITS;
public static long next() {
synchronized(Timestamper.class) {
long newTime = System.currentTimeMillis() << BIN_DIGITS;
if (time<newTime) {
time = newTime;
counter = 0;
}
else if (counter < ONE_MS - 1 ) {
counter++;
}
return time + counter;
}
}
private Timestamper() {}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?