㈠ java 里面,主线程的优先级可以设置吗
Thread类的setPriority(int level)方法设置线程的优先乱虚级。优先级别从穗埋1到10,1是最不重要的,10是最重要哗族燃的。不设置优先级将是默认值5.
㈡ 关于Java线程的优先级
Java线程的优先级越高,就越是先执行。A最低为1,B为6,C为10。程序在执行时先看线程的优先级,保证高优先级的先执行,同级别优先级的按顺序执行。并且线程在调用run方法后才开始执行。
上面的程序中,虽然创建顺序为ABC,但他们同时调入内存(因为java对于一个完整的程序是批处理),jvm会保证线程优先级顺序执行。
㈢ 在java中,返回线程的优先级的方法是什么
创建一个继承Thread的简单类:
public class SetPriorityDemo extends Thread {
@Override
public void run() {
for(int i=0;i<100;i++)
{
System.out.println(getName()+"--"+i);
}
}
}
2
在主线程中创建两个线程,并对其进行优先级的设置:
ublic class SetPriorityMain {
public static void main(String[] args) {
SetPriorityDemo spd = new SetPriorityDemo();
SetPriorityDemo spd2 = new SetPriorityDemo();
spd.getPriority();// 5 ,
spd.setName("hahah");
spd2.setName("hehhe");
spd.setPriority(10);//10
spd2.setPriority(1);//1
spd.start();
spd2.start();
}
}
3
这句语句在控制台中得到的结果是:5; 这就说明了线程默认的优先级是5;
4
spd.setPriority(10);//10
spd2.setPriority(1);//1
10是最大的优先级,最优先,而1是最小的优先级,所以最慢!
5
控制台运行结果如下:
hahah--0
hehhe--0
hahah--1
hehhe--1
hahah--2
hehhe--2
hahah--3
hehhe--3
hahah--4
hahah--5
hehhe--4
hahah--6
hahah--7
hahah--8
hahah--9
hahah--10
hahah--11
hahah--12
hahah--13
hehhe--5
hehhe--6
hahah--14
hahah--15
.