yield()
    让出cpu时间片

    礼让线程效果不太明显,多次执行以观察。

    1. public class Demo06Yield {
    2. public static void main(String[] args) {
    3. new MyThread().start();
    4. new MyThread().start();
    5. }
    6. }
    7. class MyThread extends Thread {
    8. @Override
    9. public void run() {
    10. for(int i = 1; i <= 1000; i++) {
    11. System.out.println(getName() + " - before yield - " + i);
    12. if(i % 10 == 0) {
    13. //让出CPU
    14. System.out.println(getName() + " yield - " + i);
    15. Thread.yield();
    16. }
    17. System.out.println(getName() + " - after yield - " + i);
    18. }
    19. }
    20. }