1. 当前运行线程主动放弃 CPU,JVM 暂时放弃 CPU 操作(基于时间片轮转调度的操作系统不会让线程永久放弃CPU【本次时间片的执行权】)
  2. 当前运行线程因为某些原因进入阻塞状态
  3. 当前线程运行结束

https://www.yuque.com/wirdeo/mltuga/pgu98a#r16Dm