Java学习笔记:java多线程总结 (二)

2014-11-24 11:49:52 · 作者: · 浏览: 22
lic void run() {
System.out.println(Thread.currentThread().getName()); //打印线程名称
System.out.println(Thread.currentThread() + " 休眠开始"); //打印出线程ID
try {
Thread.sleep(2000); //线程休眠2秒
} catch (Exception e) {}
System.out.println(Thread.currentThread() + " 休眠结束");
}

public static void main(String[] args) {
Test test = new Test();
Thread t1 = new Thread(test, "线程1"); //可以给线程命名
Thread t2 = new Thread(test, "线程2");
t2.setPriority(9); //设置线程优先级,值越大,越先执行
t1.setPriority(2);
System.out.println("t1 线程启动前状态" + t1.isAlive()); //线程状态
t1.setDaemon(true); //设置true后,就算java进程关闭,线程也会在后台运行
t1.start();
System.out.println("t1 线程启动后状态" + t1.isAlive());
t1.interrupt(); //中断休眠线程
t2.start();
}
}
返回结果:


[html]
t1 线程启动前状态false
t1 线程启动后状态true
线程2
Thread[线程2,9,main] 休眠开始
线程1
Thread[线程1,2,main] 休眠开始
Thread[线程1,2,main] 休眠结束
Thread[线程2,9,main] 休眠结束

t1 线程启动前状态false
t1 线程启动后状态true
线程2
Thread[线程2,9,main] 休眠开始
线程1
Thread[线程1,2,main] 休眠开始
Thread[线程1,2,main] 休眠结束
Thread[线程2,9,main] 休眠结束