Java多线程编程总结--让步

原文: http://lavasoft.blog.51cto.com/62575/27069/ 作者:熔岩
原创作品,允许转载,转载时请务必以超链接形式标明文章  原始出处  、作者信息和本声明。否则将追究法律责任。 http://lavasoft.blog.51cto.com/62575/27069

Java线程:线程的调度-让步
 
线程的让步含义就是使当前运行着线程让出CPU资源,但是然给谁不知道,仅仅是让出,线程状态回到可运行状态。
 
线程的让步使用Thread.yield()方法,yield() 为静态方法,功能是暂停当前正在执行的线程对象,并执行其他线程。
/** 
* Java线程:线程的调度-让步 
* 
* @author leizhimin 2009-11-4 9:02:40 
*/ 
public class Test { 
        public static void main(String[] args) { 
                Thread t1 = new MyThread1(); 
                Thread t2 = new Thread(new MyRunnable()); 

                t2.start(); 
                t1.start(); 
        } 
} 

class MyThread1 extends Thread { 
        public void run() { 
                for (int i = 0; i < 10; i++) { 
                        System.out.println("线程1第" + i + "次执行!"); 
                } 
        } 
} 

class MyRunnable implements Runnable { 
        public void run() { 
                for (int i = 0; i < 10; i++) { 
                        System.out.println("线程2第" + i + "次执行!"); 
                        Thread.yield(); 
                } 
        } 
}
 
线程2第0次执行! 
线程2第1次执行! 
线程2第2次执行! 
线程2第3次执行! 
线程1第0次执行! 
线程1第1次执行! 
线程1第2次执行! 
线程1第3次执行! 
线程1第4次执行! 
线程1第5次执行! 
线程1第6次执行! 
线程1第7次执行! 
线程1第8次执行! 
线程1第9次执行! 
线程2第4次执行! 
线程2第5次执行! 
线程2第6次执行! 
线程2第7次执行! 
线程2第8次执行! 
线程2第9次执行! 

Process finished with exit code 0
  

你可能感兴趣的:(java,thread,多线程,编程)