文章目录
yield方法作用介绍
- yield方法作用介绍
yield方法的作用: 释放我的CPU时间片. (比如某个时间段,虽然我获得了cpu的执行权,但是并不满足执行的条件, 把cpu的执行权让给了其他的线程. ) . 注意的是, 即使释放了cpu的时间片, 但是线程的状态, 依然还是runnable. 即使刚刚放弃了执行的权利, 也可能下一次就被调度回来了.
定位: jvm不保证一定会把cpu的执行权让给其他线程. 因此生产环境中, 一般不会使用yield, 但是在一些并发包的源码中, 会运用到yield .
yield和sleep的区别: 是否随时可能再次被调度. sleep期间, 它是已经被阻塞了, 不会把它再调度起来. 但是yield是暂时把调度权让给其他线程, 下次也可能会被调度到.