java 一些生命周期

servlet 的生命周期:

1 servlet 容器加载和实例化 servlet 对象

2 servlet 容器调用 init() 方法初始化这个对象,比如获取 web.xml 中的配置参数

   调用完 init() 方法,servlet 实例处于 ready 状态

3 servlet 容器调用 service() 方法处理请求

   service() 方法会检查 http 请求的类型(GET、POST),来调用相应的 doGet()、doPost() 方法

   service() 方法可以被调用多次,因为初始化之后用户每次访问这个 servlet 都会触发服务器调用 service() 方法

4 如果 servlet 实例长时间未被访问,容器会调用 destroy() 方法,资源释放,回收 servlet 实例

参考:

www.cnblogs.com/kmyangyang/archive/2012/07/08/Servlet%E7%9A%84%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F.html

www.cnblogs.com/lgk8023/p/6427977.html

-------------------------------------------------------------------------------------

java 线程的生命周期:

线程要经过 新建 (New)、就绪 (Runnable)、运行 (Running) 和 死亡 (Dead) 4 种状态。
运行期间还有可能进入 阻塞 (Blocked) 状态。

参考: www.cnblogs.com/sunddenly/p/4106562.html

-------------------------------------------------------------------

实现并启动线程的方法有:
1 写一个类继承 Thread 类,重写 run 方法。用 start() 方法启动线程
2 写一个类实现 Runnable 接口,实现 run 方法。用 new Thread( Runnable r1 ).start() 方法启动线程

或者用线程池启动,用 execute(r1) 方法:

ThreadPoolExecutor executor = new ThreadPoolExecutor(2, 2, 2, TimeUnit.MINUTES,
                new ArrayBlockingQueue<Runnable>(100));
executor.execute(r1);
executor.execute(r2);
 

猜你喜欢

转载自blog.csdn.net/beguile/article/details/86765071