多线程 Thread.yield的做用

yield 即 "谦让",也是 Thread 类的方法。它让掉当前线程 CPU 的时间片,使正在运行中的线程从新变成就绪状态,并从新竞争 CPU 的调度权。它可能会获取到,也有可能被其余线程获取到。spa

yield 和 sleep 的异同

1)yield, sleep 都能暂停当前线程,sleep 能够指定具体休眠的时间,而 yield 则依赖 CPU 的时间片划分。线程

2)yield, sleep 两个在暂停过程当中,如已经持有锁,则都不会释放锁资源。资源

3)yield 不能被中断,而 sleep 则能够接受中断。io

相关文章
相关标签/搜索