线程的让步含义就是使当前运行着线程让出CPU资源,但是然给谁不知道,仅仅是让出,线程状态回到可运行状态。 可能会再次被选中运行。
线程的让步使用Thread.yield()方法,yield() 为静态方法,功能是暂停当前正在执行的线程对象,并执行其他线程。
package codeFromWeb;/** * @echo 2014-4-4 * */public class TestYield { public static void main(String[] args) { Thread t1 = new MyThread3(); Thread t2 = new Thread(new MyRunnable3()); t2.start(); t1.start(); }}class MyThread3 extends Thread { public void run() { for (int i = 0; i < 10; i++) { System.out.println("线程1第" + i + "次执行!"); } }}class MyRunnable3 implements Runnable { public void run() { for (int i = 0; i < 10; i++) { System.out.println("线程2第" + i + "次执行!"); Thread.yield(); } }}
线程2第0次执行!线程1第0次执行!线程1第1次执行!线程1第2次执行!线程2第1次执行!线程2第2次执行!线程2第3次执行!线程2第4次执行!线程2第5次执行!线程1第3次执行!线程2第6次执行!线程2第7次执行!线程1第4次执行!线程1第5次执行!线程2第8次执行!线程1第6次执行!线程2第9次执行!线程1第7次执行!线程1第8次执行!线程1第9次执行!