Java教程

Java学习day29

本文主要是介绍Java学习day29,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

线程礼让(yield):礼让线程,让当前正在执行的线程暂停,但是不阻塞;让线程从运行状态转为就绪状态;让CPU重新调度,礼让不一定成功

 

合并线程(join):待此线程执行完毕后,再执行其他线程,其他线程阻塞,可以理解为插队

 

线程状态观测(Thread.State):线程可以处于以下状态之一,1.NEW,尚未启动的线程处于此状态;2.RUNNABLE,在Java虚拟机中执行的线程处于此状态;3.BLOCKED,被阻塞等待监视器锁定的线程处于此状态;4.WAITING,正在等待另一个线程执行特定动作的线程处于此状态;5.TIMED_WAITING,正在等待另一个线程执行动作达到指定等待时间的线程处于此状态;6.TERMINATED,已退出的线程处于此状态

 

线程一旦死亡就不能再重新启动

 

Java提供一个线程调度器来监控程序中启动后进入就绪状态的所有线程,线程调度器按照优先级决定应该调度哪个线程来执行;线程的优先级用数字表示,范围从1到10;使用setPriority(int x),改变优先级,getPriority(),获取优先级;优先级最高是10

 

优先级的设定建议在start()调度前,优先级低只是意味着获得调度的概率低,并不是优先级低就不会被调用,都看CPU的调度

 

明天学习守护线程,线程同步机制,三大不安全案例

这篇关于Java学习day29的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!