java Hashmap、wicket和计时器?
目前,我有一个hashamp存储在网页上注册的新用户注册,但是我想在早上8点清除hashmap。由于使用wicket,我不能使用java定时器,因为它会给我一个错误。谁能给我指出正确的方向吗?我以毫秒为单位计算时间并比较日期,但是我的网页应用程序的设置方式要求用户在早上8点时点击刷新
Tnx
Timer timer = new Timer ();
TimerTask hourlyTask = new TimerTask () {
@Override
public void run () {
sCached=false;
}
};
timer.schedule (hourlyTask, 01, 60);
# 1 楼答案
一种方法是将上次清除新用户注册hashmap的日期时间存储在某个位置
每次读取或写入此hashmap时,确定自上次清除日期起是否应清除此hashmap。如果否,则不执行任何操作,否则清除hashmap并在执行读取或写入之前更新清除日期时间
通过这种方式,您可以将hashmap的更新方式从计时基础更改为事件基础