62,615
社区成员
发帖
与我相关
我的任务
分享
public class AttributesStore {
private HashMap usersMap = new HashMap();
private HashMap servicesMap = new HashMap();
public synchronized void setUserInfo(String user, UserInfo userInfo) {
usersMap.put(user, userInfo);
}
public synchronized UserInfo getUserInfo(String user) {
return usersMap.get(user);
}
public synchronized void setServiceInfo(String service,
ServiceInfo serviceInfo) {
servicesMap.put(service, serviceInfo);
}
public synchronized ServiceInfo getServiceInfo(String service) {
return servicesMap.get(service);
}
}
private HashMap usersMap = Collections.synchronizedMap(new HashMap());
private HashMap servicesMap = Collections.synchronizedMap(new HashMap());
public class AttributesStore {
private HashMap usersMap = new HashMap();
private HashMap servicesMap = new HashMap();
public void setUserInfo(String user, UserInfo userInfo) {
synchronized(usersMap){//为什么不这样,就可以各锁各了..操作usersMap的时候同时可以操作servicesMap
usersMap.put(user, userInfo);
}
}
....
}
public void synchronized deal(){
synchronized(this) {
//代码块
}
}