java中的线程礼让

java中的线程礼让

礼让是指线程在cpu运行时,暂停运行,退回就绪状态,重新与其他线程竞争运行机会。

以下代码展示线程礼让:

package com.cxf.multithread.yield;
public class TestForYield implements Runnable{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName()+" start");
        Thread.yield();
        System.out.println(Thread.currentThread().getName()+" end");
    }

    public static void main(String[] args) {
        new Thread(new TestForYield(),"a").start();
        new Thread(new TestForYield(),"b").start();
    }
}

输出结果:

a start
a end
b start
b end

或者:

a start
b start
a end
b end

两次运行线程a都执行了礼让。第一次运行时,a礼让后再次争得运行机会,第二次运行时,a礼让后b获得运行机会。

posted on 2021-10-22 21:42  菜小疯  阅读(100)  评论(0编辑  收藏  举报