首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基本自旋锁怀疑

基本自旋锁怀疑
EN

Unix & Linux用户
提问于 2017-10-31 08:27:10
回答 1查看 125关注 0票数 0

我读到,在自旋锁中,进程在循环中一直在等待锁,直到它从其他进程接收到信号(锁)或释放(锁)。这会导致繁忙的等待,从而浪费CPU周期。

我怀疑,如果CPU在循环中不断地检查锁变量的值,那么其他一些进程将如何完全执行关键部分并释放锁,因为执行关键部分也需要CPU,而CPU则忙于检查其他进程中锁的值。

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2017-10-31 08:52:49

即使当一个进程在锁上旋转时,任务调度程序仍处于活动状态,并将调度其他任务。在单CPU系统上,旋转任务将被挂起,另一个任务将代替它运行;在多CPU系统上,确切的行为将取决于正在运行的任务的数量。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/401563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档