设计模式中的单例设计如果一个实例不够用呢?
2011-12-31 16:50
204 查看
单例模式主要就是为了节约资源,如果不够用呢?需要2个或者3个实列或者需要配置的几个才够用呢?
可以使用缓存嘛,缓存数据的容易(一般来说都是集合)
代码:
可以使用缓存嘛,缓存数据的容易(一般来说都是集合)
代码:
/**这里假设需要控制产生3个实例,实例个数可以通过配置文件配置,这里不再累赘 关于多线程可以同步方法,同步代码块和手动加锁,解锁来控制(不累赘) */ public class ThreeInstance{ private ThreeInstance(){} private static Map map=new HashMap(); //记录正在使用的实例为初始的第一个 private static int num=1; //可以产生的实例总算为3(具体多少可以通过配置文件来读取) private static int count=3; public static ThreeInstancegetInstance(){ ThreeInstance s=(ThreeInstance)map.get(num); if(s==null){ s=new ThreeInstance(); map.put(num, s); } //每调用一次+1 num++; if(num>count){ num=1; } return s; } }
相关文章推荐
- Singleton单例模式是最简单的设计模式,它的主要作用是保证在程序执行生命周期中,使用了单类模式的类仅仅能有一个实例对象存在。
- 如果一个网络请求类可能用到多次,可不可以用单例设计模式实现?
- 剑指OFFER(java)-设计一个只能创建一个唯一实例的类——单例模式
- 【U3D日记-2016年9月2日】设计模式解决工作问题的一个实例
- 单态设计模式--一个类只能创建一个实例(对象)
- 题目2:Singelton单例模式:设计一个类,只能生成该类的一个实例。
- Javascript实例教程:querySelector()方法接受一个CSS查询并返回匹配模式的第一个子孙元素,如果没有匹配的元素则返回null。
- 正在学设计模式呵,转载一篇如何保证一个窗体的实例运行
- C++设计模式5--单例模式Singleton--当前对象只有一个实例
- 设计一个只能创建一个唯一实例的类——单例模式
- Java设计模式(5)Singleton模式 只有一个实例
- 设计模式---单件(C++版) 一个简单实例(避免用户忘记delete单件实例)
- decorator设计模式一个实例
- 黑马程序员:单态设计模式static(使类在内存只有一个实例对象)
- 如果一个网络请求类可能用到多次,可不可以用单例设计模式实现?
- 第二章 实例研究:设计一个文档编辑器--《设计模式-可复用面向对象软件的基础》Erich Gamma
- 设计模式-Singleton模式(只有一个实例)
- 设计模式实例——单例工厂模式
- 23种设计模式及解释(中英文对照), 以及有实例源码参考
- 跟着实例学习设计模式(2)-静态工厂(创建型)