龙空技术网

线程的优先级

TrentGc 268

前言:

当前你们对“c语言线程优先级”大致比较关注,同学们都想要剖析一些“c语言线程优先级”的相关知识。那么小编在网络上汇集了一些对于“c语言线程优先级””的相关内容,希望各位老铁们能喜欢,咱们快快来了解一下吧!

在操作系统中,线程可以划分优先级,在Java中线程一共分为1~10个等级,如果小于1或者大于10,则JDK抛出 throw new IllegalArgumentException()这个异常信息。

JDK中经常使用3个常量来预设定义优先级的值,如下案例

public final static int MIN_PRIORITY = 1;

public final static int NORM_PRIORITY = 5;

public final static int MAX_PRIORITY = 10;

线程优先级具有规则性。

从图看出线程的优先级与代码的执行顺序无关,线程的优先级具有一定的规则性,CPU尽量先执行优先级高的。

优先级具有随机性,也就是优先级较高的线程不一定每一次都先执行完毕。

通过上图得出结论,不要把线程的优先级与运行结果的顺序作为衡量的标准。

在Java中线程有两种线程,一种是用户线程,另一种是守护线程。

守护线程是一种特殊的线程,当进程中不存在非守护线程了,则守护线程自动销毁,典型的守护线程就是垃圾回收线程。

标签: #c语言线程优先级