WEB开发网
开发学院软件开发Java Tomcat 系统架构与设计模式,第 1 部分: 工作原理... 阅读

Tomcat 系统架构与设计模式,第 1 部分: 工作原理

 2010-05-21 00:00:00 来源:WEB开发网   
核心提示: 清单 2. StandardService. addConnectorpublicvoidaddConnector(Connectorconnector){synchronized(connectors){connector.setContainer(this.container);connec

清单 2. StandardService. addConnector

public void addConnector(Connector connector) { 
  synchronized (connectors) { 
    connector.setContainer(this.container); 
    connector.setService(this); 
    Connector results[] = new Connector[connectors.length + 1]; 
    System.arraycopy(connectors, 0, results, 0, connectors.length); 
    results[connectors.length] = connector; 
    connectors = results; 
    if (initialized) { 
      try { 
        connector.initialize(); 
      } catch (LifecycleException e) { 
        e.printStackTrace(System.err); 
      } 
    } 
    if (started && (connector instanceof Lifecycle)) { 
      try { 
        ((Lifecycle) connector).start(); 
      } catch (LifecycleException e) { 
        ; 
      } 
    } 
    support.firePropertyChange("connector", null, connector); 
  } 
} 

上面是 addConnector 方法,这个方法也很简单,首先是设置关联关系,然后是初始化工作,开始新的生命周期。这里值得一提的是,注意 Connector 用的是数组而不是 List 集合,这个从性能角度考虑可以理解,有趣的是这里用了数组但是并没有向我们平常那样,一开始就分配一个固定大小的数组,它这里的实现机制是:重新创建一个当前大小的数组对象,然后将原来的数组对象 copy 到新的数组中,这种方式实现了类似的动态数组的功能,这种实现方式,值得我们以后拿来借鉴。

上一页  1 2 3 4 5 6 7 8 9  下一页

Tags:Tomcat 架构

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接