操作系统专栏——线程同步之读写锁

之前两篇文章粗劣说了互斥锁和自旋锁的原理,从本质上来说都是针对线程同步问题进行的一定的措施。互斥锁是直接去阻断另一个线程的访问,而自旋锁是让线程进入死循环不断申请资源。

而读写锁针对互斥锁和自旋锁都进行了一定的改进。

主要根据临界资源,进行了考量:

我们在实际的开发环境中,很容易就会碰见针对数据库的资源多读少写的情况,更多的是select居多。而读取并不会改变临界资源的值。如果频繁加锁,释放锁,那么对于性能会造成极大的损失。

是否存在一种更有效的同步方法呢?

没错,就是读写锁。

读写锁可以做到:

  • 允许多个线程读
  • 但只允许一个线程写

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值