对象池

版权声明:以上只是个人观点,如有错误,欢迎指导,如有侵权,请联系删除。 https://blog.csdn.net/qq_32337109/article/details/79976092

对象池:
对象池模型创建并拥有固定数量的对象,当程序需要一个新的对象时,如果对象池中有空闲对象,则立即返回,否则才创建新的该类对象。当一个对象不再被使用时,其应该应该将其放回对象池,以便后来的程序使用。由于系统资源有限,一个对象池模型应该指定其可容纳的最大对象数量。当达到该数量时,如果仍然有对象创建请求,则抛出异常或者阻塞当前调用线程,直到一个对象被放回对象池中。

对象池模型适用的场景
(1)需要使用大量对象
(2)这些对象的实例化开销比较大且生存期比较短

对象池优势:
一个对象池可以在可容忍时间内创建成功并投入使用。但是创建对象时并不总是这样,尤其是当这些对象的创建过程比较耗时,而且创建和销毁频率又比较大时更是如此。比如数据库连接、网络套接字连接、线程对象、诸如字体或位图等图像对象等。

我模仿写的一个简单的tomcat,用对象池来管理servlet。
代码在的pool包下:https://github.com/jiaoxiangyu/webServer

阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页