Java设计模式及实践》—2.5 对象池模式

网友投稿 768 2022-05-30

2.5 对象池模式

对象的实例化是最耗费性能的操作之一,这在过去是个大问题,现在不用再过分关注它。但当我们处理封装外部资源的对象(例如数据库连接)时,对象的创建操作则会耗费很多资源。

解决方案是重用和共享这些创建成本高昂的对象,这称为对象池模式,如图2-9所示,它具有以下结构。

图 2-9

对象池模式中使用的类如下所示:

ResourcePool(资源池类):用于封装逻辑的类。用来保存和管理资源列表。

《Java设计模式及实践》—2.5 对象池模式

Resource(资源类):用于封装特定资源的类。资源类通常被资源池类引用,因此只要资源池不重新分配,它们就永远不会被回收。

Client(客户端类):使用资源的类。

当客户端需要新资源时,会向资源池类申请,资源池类检查后获取第一个可用资源并将其返回给客户端:

客户端使用完资源后会进行释放,资源会重新回到资源池以便重复使用。

资源池的典型用例是数据库连接池。通过维护数据库连接池,可以让代码使用池中的不同数据库连接。

Java 数据库

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:OpenMP在NUMA架构下的调优
下一篇:《Spark Streaming实时流式大数据处理实战》 ——3.9 本 章 小 结
相关文章