background image

 

阿三 :4 

 

李四 :3 

 

李四 :4 

Process finished with exit code 0 

  
这样

线程

每次执行过程中,总会睡眠 3 毫秒,睡眠了,其他

线程

 

有机会执行了。

  

 

注意:

1

线程

眠是帮助所

线程

 

得运行机会的最好方法。

2

线程

眠到期自动苏醒,并返回到可运行状态,不是运行状态。sleep()中指定的时间

线程

会运行

的最短时间。因此,sleep()方法不能保证

线程

 

眠到期后就开始执行。

3、sleep()是静态方法,只能控制当前正在运行

线程

 

  

 

下面给个例子:

/** 

* 一个计数器,计数到 100,在每个数字之间暂停 1 秒,每隔 10

 

个数字输出一个字符串

* @author leizhimin 2008-9-14 9:53:49 

*/ 

public class MyThread extends Thread { 

    public void run() { 

        for (int i = 0; i < 100; i++) { 

            if ((i) % 10 == 0) { 

                System.out.println("-------" + i); 

            } 

            System.out.print(i); 

            try { 

                Thread.sleep(1); 

                System.out.print("    

线程

眠 1 毫秒!\n"); 

            } catch (InterruptedException e) { 

                e.printStackTrace(); 

            } 

        } 

    } 

    public static void main(String[] args) { 

        new MyThread().start(); 

    } 

  

-------0 

0    

线程

眠 1

 

毫秒!