线程状态(new /runable /blocked/waiting/Timed_waiting/terminated)
new Thread()创建线程对象 进入新生状态
新生状态->start()(start方法 /阻塞事件解除/yield 让出cpu调度/jvm本身切换到其他线程会进入就绪状态)
就绪状态–>获得执行权
运行状态–》run方法结束进入死亡状态
死亡状态
阻塞状态 (当调用sleep()/wait()/join()/IO流,同步锁定的时候,线程进入阻塞状态 阻塞事件解除后,重新进入就绪状态,等待cpu调度执行才进入运行状态)
sleep()
join()
yield() 不进入阻塞
stop(),已经过时不建议使用
线程停止
1、线程结束
2、利用外部的变量加入标示 不建议使用stop() destory ()
private boolean flag =true;
public void terminate(){
this.flag=false;
};
。。。。
if (i==80){
zhangsan.terminate();
}
。。。
sleep(时间)