tomcat的机制

时间:2010-03-22 15:41:45

标签: tomcat6 classloader

这是tomcat加载器结构:

      Bootstrap
          |
       System
          |
       Common
       /     \
  Webapp1   Webapp2 ... 

我的问题是装载机实际上是如何工作的?

即使没有请求,他们是否在启动tomcat时加载所有类?

或者他们在请求进来时加载必要的类?

加载类的生命周期怎么样?

1 个答案:

答案 0 :(得分:1)

  

他们在tomcat时加载所有类吗?   即使没有,也会开始   请求?

答案可能是。使用的策略取决于您的JVM实现。通常,只有在需要时才会加载类。

  

或者当他们加载必要的类时   请求进来?

这又取决于你的JVM的类加载器策略。一般来说,虽然只在需要时才加载类。例如,如果请求1不需要类Foo但请求2不需要,那么该类将仅在请求2期间加载。

  

那个生命周期怎么样?   加载类?

类的实例遵循正常的垃圾收集规则,因此在不再引用它们时会删除它们。至于班级本身,我并不完全确定。我想它们遵循类似的模式,即如果没有类的实例,JVM需要更多的内存,它就会卸载类。