java吧 关注:1,246,818贴子:12,724,605
  • 2回复贴,共1

设计模式--享元模式 的问题

只看楼主收藏回复

/*构造方法,做一些初始化工作*/
private ConnectionPool() {
pool = new Vector<Connection>(poolSize);
for (int i = 0; i < poolSize; i++) {
try {
Class.forName(driverClassName);
conn = DriverManager.getConnection(url, username, password);
pool.add(conn);
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
这是关于享元模式的一篇博客的例子,后面说的是
===通过连接池的管理,实现了数据库连接的共享,不需要每一次都重新创建连接,节省了数据库重新创建的开销,提升了系统的性能!===
我想说的是:在多线程的时候,假如20根线程,而只创建10根连接,剩下的10根线程通过复用连接,可以节省重新创建的开销。但是如果只有5根线程,此时还是创建了10根连接,那么这个时候跟不用享元模式是一样的效果(默认短时间内不会释放连接)。
我想说的是:并不是所有时候都能节省重新创建的开销,数据量小的时候同样要创建那么多对象,甚至没必要创建那么多对象。
这是我看设计模式时候的想法,。各位大佬 ,我这样理解可以吗 ???


1楼2017-07-28 17:43回复
    大佬何在。。


    来自Android客户端2楼2017-07-28 19:35
    回复
      我只是想确认一下


      来自Android客户端3楼2017-07-28 19:36
      回复