线程休眠-Sleep

线程休眠

  • Sleep(时间)指定当前线程阻塞的毫秒数;
  • Sleep存在异常 InterruptedException;
  • Sleep时间达到后线程进入就绪状态;
  • Sleep可以模拟网络延迟,倒计时等。
  • 每一个对象都有一个锁,Sleep不会释放锁

案例

package Thread;


import java.sql.SQLOutput;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestSleep {
    
    

    public static void main(String[] args) throws InterruptedException {
    
    
        //tenDown();
        Time();
    }

    //模拟倒计时
    public static  void tenDown() throws InterruptedException {
    
    
        int num=10;
        while (true){
    
    
            Thread.sleep(1000);
            System.out.println(num--);
            if (num<=0){
    
    
                break;
            }
        }
    }

    //打印当前系统时间
    public static void Time(){
    
    
        Date startTime=new Date(System.currentTimeMillis());  //获取系统时间
        while (true){
    
    
            try {
    
    
                Thread.sleep(1000);
                System.out.println(new SimpleDateFormat("HH:mm:ss").format(startTime));
                startTime=new Date(System.currentTimeMillis());  //更新当前时间
            } catch (InterruptedException e) {
    
    
                e.printStackTrace();
            }
        }
    }
}

猜你喜欢

转载自blog.csdn.net/qq_45162683/article/details/111590052