一:
java多线程优先级范围在1~10,小于1或大于10,则会抛出IllegalArgumentException异常
值越大优先级越高。一般理解为:优先级高的获得cpu的几率更大些。只是几率更大些。其余没别的什么。
设置优先级通过setPriority方法。
如:Thread1 t1=new Thread1();
t1.setName("thread1");//设置线程名称
t1.setPriority(6);//设置线程优先级
t1.start();
二:
在java中,线程的优先级具有继承性,例如A线程启动B线程,则A和B的优先级是一样的
三:
java 中有两种线程:用户线程和守护线程。
可以通过isDaemon()方法来区别它们:如果返回false,则说明该线程是“用户线程”;否则就是“守护线程”。
用户线程一般用户执行用户级任务,而守护线程也就是“后台线程”,一般用来执行后台任务。
需要注意的是:Java虚拟机在“用户线程”都结束后会后退出