一)sleep()简介
static void sleep(long millis) :使当前正在执行的线程以指定的毫秒数暂停(暂时停止执行),具体取决于系统定时器和调度程序的精度和准确性。
static void sleep(long millis, int nanos):使正在执行的线程以指定的毫秒数加上指定的纳秒数来暂停(临时停止执行),具体取决于系统定时器和调度器的精度和准确性。
线程睡眠:当线程调用Thread.sleep(long millis)方式时,会使线程变为阻塞状态,以毫秒为单位。当线程结束睡眠时,会变为就绪状态,等待运行。
调用方式:当继承Thread实现多线程时,直接调用sleep(long millis)方法,其它情况都需要通过Thread.sleep(long millis)方式调用。
适用场景:当执行程序要求频率慢一点的场景。比如在做网页爬虫时,一些接口调用是有请求频率限制的,当调用接口太频繁或调用频率总是相同时,容易被封号,该场景可以适用sleep()随机休眠