Tomcat源码解读--代码走读之(二十一的2-3)pipeline.start(四十)

调用当前方法的对象是StandardEngine[Catalina],执行pipelinestart方法的对象是Pipeline[StandardEngine[Catalina]]

1init

1)、setStateInternal(LifecycleState.INITIALIZING,null, false),因为StandardPipelinelslisteners0,所以没有动作执行。

2)、initInternal(),没有动作执行。

3)、setStateInternal(LifecycleState.INITIALIZED,null, false),因为StandardPipelinelslisteners0,所以没有动作执行。

2setStateInternal(LifecycleState.STARTING_PREP,null, false),因为StandardPipelinelslisteners0,所以没有动作执行。

3startInternal()

1)、StandardEngineValve[Catalina].start

   1)、init

     1))、setStateInternal(LifecycleState.INITIALIZING, null, false),因为StandardEngineValvelslisteners0,所以没有动作执行。

     2))、initInternal(),调用父类LifecycleMBeanBase注册Mbean

     3))、setStateInternal(LifecycleState.INITIALIZED, null, false),因为StandardEngineValvelslisteners0,所以没有动作执行。

    2)、setStateInternal(LifecycleState.STARTING_PREP, null, false) ,因为StandardEngineValvelslisteners0,所以没有动作执行。

    3)、startInternal(),主要是setState(LifecycleState.STARTING),,因为StandardEngineValvelslisteners0,所以没有动作执行。

    4)、setStateInternal(LifecycleState.STARTED, null, false),因为StandardEngineValvelslisteners0,所以没有动作执行。

2)、setState(LifecycleState.STARTING),因为StandardEngineValvelslisteners0,所以没有动作执行。

4setStateInternal(LifecycleState.STARTED,null, false),因为StandardPipelinelslisteners0,所以没有动作执行。

猜你喜欢

转载自83519144.iteye.com/blog/1887010