您当前的位置:首页 > 计算机 > 编程开发 > Java

9.27. 多线程中的忙循环是什么

时间:12-14来源:作者:点击数:

忙循环就是程序员用循环让一个线程等待,不像传统方法 wait()、sleep() 或 yield() 它们都放弃了 CPU 控制,而忙循环不会放弃 CPU,它就是在运行一个空循环。这么做的目的是为了保留 CPU 缓存。

在多核系统中,一个等待线程醒来的时候可能会在另一个内核运行,这样会重建缓存。为了避免重建缓存和减少等待重建的时间就可以使用它了。

多线程中的忙循环指的是一种在多线程程序中,一个线程不断地循环检查某个条件是否满足,如果条件满足则执行相应的操作,否则继续等待的执行方式。这种方式可能会占用大量的 CPU 资源,因为线程不断地在循环中检查条件,即使条件不满足也会占用CPU资源,不利于性能优化。因此,建议在多线程程序中采用同步/通信等方式来避免忙循环。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐