(1)jvm将cpu资源从当前线程切换到其他线程,这样线程就放弃了在中断状态下使用cpu的权利。(2)sleep方法是在线程使用cpu资源时执行的,这会使当前线程进入睡眠状态。(3)当线程使用cpu资源时,它执行wait()方法,使当前线程进入等待状态。(4)当线程正在使用cpu资源时,它通过执行一个操作(如读/写操作)进入阻塞状态。
我不知道你说的阻塞是什么意思。如果它处于wait、suspend或sleep状态,则不会占用cpu资源,但在其他情况下会占用大量cpu资源,例如复杂计算和死循环。