Tomcat源码解读--代码走读之(三十七的2-5-5)StandardWrapper.start(三十八)

当前对象为:

StandardEngine[Catalina].StandardHost[localhost].StandardContext[/docs].StandardWrapper[jsp]

StandardWrapper的类关系是:

StandardWrapperextends ContainerBase implements ServletConfig, Wrapper, NotificationEmitter

abstractclass ContainerBase extends LifecycleMBeanBase implements Container

调用父类LifecycleBase.start方法。

1、Init

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

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

 

 (3)、setStateInternal(LifecycleState.INITIALIZED,null, false)

StandardWrapperlslisteners0,所以没有动作执行。

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

3startInternal()

 (1)、Send j2ee.state.startingnotification

 (2)、super.startInternal(),调用父类ContainerBase执行startInternal()方法。



 

    1)、((Lifecycle) pipeline).start(),后续介绍。

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

    3)、threadStart,没有执行动作。
 (3)、setAvailable(0L),设置可用时间,默认为0



 

4setStateInternal(LifecycleState.STARTED,null, false)

StandardWrapperlslisteners0,所以没有动作执行。

 

猜你喜欢

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