首页 > 代码库 > Java多线程-线程调度及获取和设置线程优先级

Java多线程-线程调度及获取和设置线程优先级

线程有两种调度模型:
1、分时调度模型
所有线程轮流使用CPU的使用权,平均分配给每个线程占用CPU的时间片。
2、抢占式调度模型
优先让给线程高的线程使用CPU,如果线程的优先级相同,
那么随机选择一个,优先级高的线程获取的CPU的时间片相对多一些。

Java使用的是抢占式调度模型

查阅API常用方法:
public final int getPriority() 返回线程的优先级。
默认线程优先级为5

public final void setPriority(int newPriority)更改线程的优先级。
public static final int MAX_PRIORITY线程可以具有的最高优先级。10
public static final int MIN_PRIORITY线程可以具有的最低优先级。1
public static final int NORM_PRIORITY分配给线程的默认优先级。 5

Java多线程-线程调度及获取和设置线程优先级