作文档>生活经验>其他

自旋锁和互斥锁的区别

更新时间:

自旋锁和互斥锁的区别是:

自旋锁与互斥锁有点类似,只是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是否该自旋锁的保持者已经释放了锁,“自旋”一词就是因此而得名。其作用是为了解决某项资源的互斥使用。因为自旋锁不会引起调用者睡眠,所以自旋锁的效率远高于互斥锁。虽然它的效率比互斥锁高。

自旋锁一直占用CPU,他在未获得锁的情况下,一直运行--自旋,所以占用着CPU,如果不能在很短的时间内获得锁,这无疑会使CPU效率降低。在用自旋锁时有可能造成死锁,当递归调用时有可能造成死锁,调用有些其他函数也可能造成死锁,因此要慎重使用自旋锁,自旋锁只有在内核可抢占式或SMP的情况下才真正需要,在单CPU且不可抢占式的内核下,自旋锁的操作为空操作。自旋锁适用于锁使用者保持锁时间比较短的情况下。


自旋锁和互斥锁的区别相关文章:

应用软件和实用软件的区别是什么

颗粒羊绒和皮毛一体的区别

注册会计师和中级会计师的区别

苹果5s有锁和无锁版有什么区别

城镇医保和新农合的区别有哪些

干路先行和支路先行的区别

毛周角化和脂肪粒的区别

冬至扫墓和清明扫墓的区别

苹果无锁和有锁的区别

LOL灵活排位和单双排的区别是什么

自旋锁和互斥锁的区别

自旋锁和互斥锁的区别是:自旋锁与互斥锁有点类似,只是自旋锁不会引起调用者睡眠,如果自旋锁已经被别的执行单元保持,调用者就一直循环在那里看是否该自旋锁的保持者已经...
推荐度:
点击下载文档文档为doc格式

精选图文