线程的优先级和守护线程

(一)线程的优先级
1:在Java中,线程优先级的范围是1~10,默认的优先级是5。

2:"高优先级线程"会优先于"低优先级线程"执行。但是如果说谁先完成这个是无法确定的。

(二)线程优先级的特性
1:继承性:线程A启动线程B,线程A和B具有相同的优先级。
Thread.currentThread().getPriority() 可以获取到是线程几执行,返回值是int

2:规则性:CPU尽量将执行的资源让给优先级高的线程用,但是不一定是优先级较大的线程先执行完。

3:随机性:即使线程没有设置优先级,并不能保证执行先后,线程运行具有随机性。

(三)守护线程
线程:用户线程和守护线程。

用户线程:执行用户级的任务。

守护线程:后台线程,一搬用户执行后台任务。

isDaemon()方法区分用户和守护:
如果返回false,则说明该线程是"用户线程";否则就是"守护线程"

Java虚拟机在"用户线程"都结束后,守护线程会退出。

sho
在这里插入图片描述
在这里插入图片描述
守护线程和用户线程实践:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
总结:
在这里插入图片描述

发布了163 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_41987908/article/details/103597581
今日推荐