知识卡片

有上限的多例模式

普通读书笔记卡 · 1984.e

内容

有上限的多例模式是[[单例模式的定义与实现要点]]的扩展:业务需要固定产生N个实例时,用 静态列表在类加载时预先创建好,获取方法按策略(随机/轮询)从列表返回其一,构造函数仍 private。典型用法是预建固定数量的文件reader实例池。发散:这是”对象池”思想的雏形,把 单例从1个实例泛化为N个实例的池。

参考来源

- 位置:《设计模式之禅(第2版)》第7章《单例模式》(源文件:_epub-src/text/part0031.html) - 结论依据:原文用"多个皇帝"类比说明如何用静态列表预先创建固定数量(maxNumOfEmperor)的实例,getInstance方法从列表中随机返回一个,并指出这种"有上限的多例模式"可用于预建固定数量的文件reader实例池以提升响应速度。 - 原始内容:这种需要产生固定数量对象的模式就叫做有上限的多例模式,它是单例模式的一种扩展,采用有上限的多例模式,我们可以在设计时决定在内存中有多少个实例……例如读取文件,我们可以在系统启动时完成初始化工作,在内存中启动固定数量的reader实例。