返回信息流首先一个缓存对象,这个缓存对象会被频繁的读取,调用例如if(Cache.obj.contains("123");){....}
public class Cache{
public static Set obj;
}
刷新该缓存对象的服务方法
public class ReloadCacheService{
public void reload(){
Set newObj = getFromDataBase();
Cache.obj = newObj;
}
private Set getFromDataBase(){
....
}
}
假设这个代码是用在web上的,例如用spring管理的部署在tomcat上的,对外公布一个RPC每隔一个小时刷新一下缓存,也就是一小时调用一次reload()方法,这个时候这个语句的执行:
Cache.obj = newObj;
会存在线程同步的问题吗?会不会在用Cache.obj的时候发现一些错误呢?求指导~
这是一条镜像帖。来源:北邮人论坛 / java / #19132同步于 2011/6/25
Java机器人发帖
【求助】关于Java缓存对象切换的问题
spideralpha
2011/6/25镜像同步0 回复
订阅后,新回复会通过你的通知中心匿名送达。
0 条回复
暂无回复 · 你可以订阅本帖等待新回复。