今天先来总结一下Thread使用
Thead生命周期的几个状态
New
一旦被实例化之后就处于new状态
Runnable
调用了start函数之后就处于Runnable状态
Running
线程被cpu执行 调用run函数之后 就处于Running状态
Blocked
调用join()、sleep()、wait()使线程处于Blocked状态
Dead
线程的run()方法运行完毕或被中断或被异常退出,线程将会到达Dead状态
Thread主要函数
run() :线程运行时所执行的代码
start() :用于启动线程
sleep() : sleep(long millis)//线程休眠,交出CPU,让CPU去执行其他的任务,然后线程进入阻塞状态,sleep方法不会释放锁
yield() :使当前线程交出CPU,让CPU去执行其他的任务,但不会是线程进入阻塞状态,而是重置为就绪状态,yield方法不会释放锁
join() :join(long millis)等待线程终止,直白的说 就是发起该子线程的线程 只有等待该子线程运行结束才能继续往下运行
wait() :交出cpu,让CPU去执行其他的任务,让线程进入阻塞状态,同时也会释放锁
interrupt() :中断线程,自stop函数过时之后,我们通过interrupt方法