概述
自旋锁 互斥锁 读写锁 递归锁
自旋锁:
互斥锁:
1.自旋锁不会睡眠,互斥锁会睡眠,因此自旋锁效率高于互斥锁。------自旋锁比较适用于锁使用者保持锁时间比较短的情况
2.自旋锁消耗cpu:由于一直查询,所以自旋锁一直占用cpu,互斥锁不会,自旋锁导致cpu使用效率低
3.自旋锁容易造成死锁-------比如递归调用
递归程序决不能在持有自旋锁时调用它自己,也决不能在递归调用时试图获得相同的自旋锁。此外如果一个进程已经将资源锁定,那么,即使其它申请这个资源的进程不停地疯狂"自旋",也无法获得资源,从而进入死循环。
读写锁:
读锁:允许多个线程同时持有,进行读—
写锁:只能有一个线程写
但读写锁不能同时获取,即读的时候,不允许有写锁工作,写的时候不允许读锁工作
最后
以上就是追寻砖头为你收集整理的网络编程--自旋锁 互斥锁 读写锁 递归锁的全部内容,希望文章能够帮你解决网络编程--自旋锁 互斥锁 读写锁 递归锁所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复