线程休眠

线程休眠(sleep)

特点

  • sleep指定当前线程阻塞的毫秒数
  • 存在异常需要抛出
  • 时间到达后线程进入就绪状态
  • 可以模拟网络延时,倒计时等
  • 每个对象都有一把锁,sleep不会释放锁

模拟网络延时 (放大问题的放大性)

模拟时间延时

package com.Luoking.Thread;

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

public class threadSleep implements Runnable{
    private int num = 10;

    @Override
    public void run() {
        while(true){
            Date date = new Date(System.currentTimeMillis());//获取当前系统时间
            try {
                Thread.sleep(1000); //模拟延时
                System.out.println(new SimpleDateFormat("HH:mm:ss").format(date));
                date = new Date(System.currentTimeMillis());//更新当前系统时间
                num--;
                if (num<=0){
                    break; //退出循环
                }
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    }

    public static void main(String[] args) {
        threadSleep T1 = new threadSleep();
        new Thread(T1).start();
    }
}
posted @ 2022-04-29 12:09  小罗要有出息  阅读(75)  评论(0编辑  收藏  举报