站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2SE 专题如何对使用单例模式的类进行同步?

如何对使用单例模式的类进行同步?

摘要: 如何对使用单例模式的类进行同步?


在servlet中需要调用这个类,类的功能是自动生成序列号,但是生成的序列号要根据当前用户的信息来生成,因此类中有一个对象保存用户的信息:
class tt
{
private static ExportDataToDatabase exInstance = null;
String user;
public static synchronized ExportDataToDatabase getInstance(){
if(exInstance == null){
return new ExportDataToDatabase();
}
return exInstance;
}


public procid()
{
^^^^^^
}
}
问题一:由于是单例模式,在前一个用户还没有使用完这个类的时候,第二个用户调用了这个类,那么user信息会变吗?
问题二:要想一个用户使用完了才允许其他用户使用,synchronized应该加在什么地方
问题三:servlet本身就是多线程的,在里面再加个synchronized会有问题吗?


你的代码已经实现了你要的要求。
详见《JAVA与模式》第15章。


public procid()

这个方法上面需要加上synchronized关键字




↑返回目录
前一篇: 请问如何用java将excel文件转成word文件?
后一篇: 运行时不能正常显示中文