当前位置: 首页 > 图灵资讯 > 技术篇> 如何保证线程执行的顺序

如何保证线程执行的顺序

来源:图灵教育
时间:2023-06-06 09:33:46

Thread类结构方法: 1.Thread(); 2.Thread(String name); 3.Thread(Runable r); 4.Thread(Runable r, String name);

常用的thread类方法: start();///启动线程 getId();//获取线程ID getName();//获取线程名称 getPriority();//获得优先权 isAlive();///判断线程是否活动 isDaemon();///判断是否保护线程 getState();//获得线程状态 sleep(long mill);///休眠线程 join();//等待线程结束 yield();////放弃使用CPU的权利 interrupt();///中断线程 currentThread();///获得正在执行的线程对象

以下实例采用join()实现线程顺序执行:

/* T1有三个线程 T2 T3,如何保证它们按顺序执行-在T2run中转载,并调用T1.join,让T1执行完成后,让T2在T2run中执行,调用T2.join,完成T2执行后,让T3执行*//public class ThreadByOrder {    static Thread t1 = new Thread(new Runnable() {        @Override        public void run() {            System.out.println("t1");        }    });    static Thread t2 = new Thread(new Runnable() {        @Override        public void run() {            try {                t1.join();                Thread.sleep(500);            } catch (InterruptedException e) {                // TODO Auto-generated catch block                e.printStackTrace();            }            System.out.println("t2");        }    });    static Thread t3 = new Thread(new Runnable() {        @Override        public void run() {            try {                t2.join();                Thread.sleep(500);            } catch (InterruptedException e) {                // TODO Auto-generated catch block                e.printStackTrace();            }            System.out.println("t3");        }    });    public static void main(String[] args) {        t1.start();        t2.start();        t3.start();    }}

执行结果:

如何保证线程执行的顺序_System

分类: java基础

标签: java基础