Java开发基础-线程-线程常用的方法—02

  1. 线程优先级

       Thread中几个优先级常量 及说明:

       Thread.MAX_PRIORITY,Thread.MIN_PRIORITY,Thread.NORM_PRIORITY对应数值 10,1,5

       线程总共有1到10个优先级值,创建线程时默认优先级为5,可以通过优先级有关静态方式

       修改其优先级。

    下面通过简单实例演示

public class ThreadDemo6 {

	public static void main(String[] args) {

		Thread max = new Thread(){
			
			@Override
			public void run() {
				for(int i=0;i<1000;i++){
					System.out.println("max");
				}
			}
			
		};
		
		Thread min = new Thread(){

			@Override
			public void run() {
				for(int i=0;i<1000;i++){
					System.out.println("min");
				}
			}
			
		};
		
		Thread norm = new Thread(){
           
			@Override
			public void run() {
				for(int i=0;i<1000;i++){
					System.out.println("norm");
				}
			}
			
		};
		
		max.setPriority(Thread.MAX_PRIORITY);
		min.setPriority(Thread.MIN_PRIORITY);
		
		min.start();
		norm.start();
		max.start();
	}
}

总结说明:

 * 线程优先级
 * 线程不能涉及线程调度的工作,线程不能要时间片,
 * 只能被动的被分配,并且分配给哪个线程也是不可控的.
 * 改变线程的优先级可以改变时间片分配几率.
 * 理论上,线程优先级高的线程获取CPU时间片的次数多.


猜你喜欢

转载自blog.csdn.net/Coder_Boy_/article/details/80374555