线程之间运行时独立的,主线程结束,其他线程不受影响
实现2中方式:
1 extends Thread 重写run方法
2 实现Runnable 接口 重写run方法
main 执行在主线程
主要使用Runnable
1 一个类可以实现多个接口
2 实现资源的共享
join() 一个线程等待要加载的线程完成之后再执行
join(1500) 一个线程等待1.5s ,不管有没有完成,都会继续执行
sleep 会给其他线程机会,不会理会其他线程优先级
yield 只会给优先级相同或者更高的线程机会
前台线程死亡 后台线程也自动死亡
后台线程 dt.setDaemon(true);
public class DemonDemo {
public static void main(String[] args) {
DemonThread dt=new DemonThread();
dt.setDaemon(true);
dt.start();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
class DemonThread extends Thread {
@Override
public void run() {
for(int i = 0; i < 10; i ++) {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(getName() + i);
}
}
}