线程优先级
编程技术  /  houtizong 发布于 3年前   104
多线程运行时需要定义线程运行的先后顺序。
线程优先级是用数字表示,数字越大线程优先级越高,取值在1到10,默认优先级为5。
实例:
package com.bijian.study;/** * 因为在代码段当中把线程B的优先级设置高于线程A,所以运行结果先执行线程B的run()方法后再执行线程A的run()方法 * 但在实际中,JAVA的优先级不准,强烈不建议用此方法来控制执行顺序和频率 */public class ThreadPriorityDemo {public static void main(String args[]) {ThreadA a = new ThreadA();ThreadB b = new ThreadB();b.setPriority(10);a.setPriority(1);//设置优先级别,数值越大优先级越高int priA = a.getPriority();//获得优先级的方法int priB = b.getPriority();System.out.println(priA);System.out.println(priB);b.start();a.start();}}class ThreadA extends Thread {public void run() {System.out.println("我是线程A");}}class ThreadB extends Thread {public void run() {System.out.println("我是线程B");}}
运行结果:
110我是线程B我是线程A
设置优先级也可以用线程常量
a. MAX_PRIORITY为最高优先级10
b. MIN_PRIORITY为最低优先级1
c. NORM_PRIORITY是默认优先级5
实例:
package com.bijian.study;public class ThreadPriConstantDemo {public static void main(String args[]) {Thread a = new Thread();int temp = Thread.MAX_PRIORITY;a.setPriority(temp);//将线程优先级设置为最高System.out.println(a.getPriority());temp = Thread.MIN_PRIORITY;a.setPriority(temp);//将线程优先级设置为最低System.out.println(a.getPriority());temp = Thread.NORM_PRIORITY;a.setPriority(temp);//将线程优先级设置为默认System.out.println(a.getPriority());}}
运行结果:
1015
请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!
技术博客集 - 网站简介:
前后端技术:
后端基于Hyperf2.1框架开发,前端使用Bootstrap可视化布局系统生成
网站主要作用:
1.编程技术分享及讨论交流,内置聊天系统;
2.测试交流框架问题,比如:Hyperf、Laravel、TP、beego;
3.本站数据是基于大数据采集等爬虫技术为基础助力分享知识,如有侵权请发邮件到站长邮箱,站长会尽快处理;
4.站长邮箱:[email protected];
文章归档
文章标签
友情链接