c语言设置线程优先级别

后端 (59) 2023-11-20 15:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说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;

线程优先级具有规则性。

c语言设置线程优先级别_https://bianchenghao6.com/blog_后端_第1张

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

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

c语言设置线程优先级别_https://bianchenghao6.com/blog_后端_第2张

c语言设置线程优先级别_https://bianchenghao6.com/blog_后端_第3张

c语言设置线程优先级别_https://bianchenghao6.com/blog_后端_第4张

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

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

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

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。