2009年4月24日
此时程序中最多有几个存活的线程,个人认为应该是4个,怎么就是看不到是4个的结果呢?
package Test;
public class Testthread{
public static void main(String[] args){
//测定当前活动的线程数目 肯定有一个主线程在运行
System.out.println("=========header========"+Thread.activeCount());
ThreadTest tt=new ThreadTest();
RunTest rt=new RunTest(); //在下面新建线程里被启动
new Thread(rt).start(); //新建立的一个线程 启动
tt.start(); //已经建立的线程 启动
System.out.println("===========footer======"+Thread.activeCount());
}
}
class ThreadTest extends Thread{
public void run(){
System.out.println("==========I'm over thread=========");
}
}
class RunTest implements Runnable{
public void run(){
System.out.println("==========I'm over runnable==========");
}
}
打印结果:
第一类结果 (次序有时不同)
=========header========1
===========footer======3
==========I'm over thread=========
==========I'm over runnable==========
第二类结果
=========header========1
==========I'm over runnable==========
===========footer======2
==========I'm over thread=========
posted @
2009-04-24 15:04 王业平 阅读(1145) |
评论 (6) |
编辑 收藏
Servlet的生命周期:
(1)装载Servlet。这项操作一般是动态执行的。然而,Server通常会提供一个管理的选项,用于在Server启动时强制装载和初始化特定的Servlet;
(2)Server创建一个Servlet的实例;
(3)Server调用Servlet的init()方法;
(4)一个客户端的请求到达Server;
(5)Server创建一个请求对象;
(6)Server创建一个响应对象;
(7)Server激活Servlet的service()方法,传递请求和响应对象作为参数;
(8)service()方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息;
(10)service()方法使用响应对象的方法,将响应传回Server、最终到达客户端。
service()方法可能激活其它方法以处理请求,如doGet()或doPost()或程序员自己开发的新的方法;
对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此Servlet的service()方法,将这两个对象作为参数传递给它。如此重复以上的循环,但无需再次调用init()方法。一般Servlet只初始化一次;
当Server不再需要Servlet时,Server调用Servlet的Destroy()方法。
posted @
2009-04-24 10:13 王业平 阅读(1194) |
评论 (2) |
编辑 收藏
我是菜鸟,所以我很谦虚,很谨慎,可是还是很多的bug,
我不断的努力,纵然很多困难,可我依然谦虚谨慎,因为那就是我坚持,淡定的看着水云,望着辽远的天空...
|
|
29 | 30 | 31 | 1 | 2 | 3 | 4 |
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 1 | 2 |
3 | 4 | 5 | 6 | 7 | 8 | 9 |
常用链接
留言簿(2)
随笔档案
搜索
最新评论
阅读排行榜
评论排行榜