繁体   English   中英

Java中的池类是什么?

[英]What is a Pool Class in Java?

我不明白Java中有什么池,池对象工厂和“自由对象”。 我正在学习要在android中使用的java,并且遇到了Pool类。 我搜索了互联网,发现它们被用于回收利用,并且节省内存是我收集的,但是我不知道该怎么做。 我是Java新手。

池有多种用途,例如

  • 重用对象而不必销毁并重新创建它们
  • 限制创建的对象数量
  • 等等

假设您需要一个类型为A的对象。不再使用new A()创建它并删除引用或在不再需要它时销毁该对象,而是请求A的池给您一个实例,然后递给您当您不需要它时将其返回。 在那种情况下,池决定是创建还是重用新实例,如果没有更多的“免费”实例,该做什么,以及将实例交还(释放)时该做什么。

当大量客户端(程序)访问资源时,池作用不大。 假设有5个活动通道访问该资源,并且一次6个用户尝试访问该资源,则第6个资源将被拒绝,并且访问资源数据的应用程序将显示连接失败。 但是,如果我们使用共享池,则第6个用户将等待池配置中定义的特定时间,并且如果到那时,如果任何客户端释放了资源,则第6个用户将可以访问该资源,并且连接不会被拒绝。 最大等待客户端数,最大等待时间是配置参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM