首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
课程
专栏·文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
蕾姆是我女神
2018-11-23 18:45
已编辑
Java
关注
已关注
取消关注
忽然想不通了,Java里的读写锁里的读锁有什么用?
ReentrantReadWriteLock里的readLock有什么用?
看百度上有个人说这样能让多线程不阻塞进入临界区,
可是不加锁的话多线程不是都可以访问临界区吗?
如果阻塞的话怎么会出现线程安全问题……
求大佬指点迷津,加读锁和不加读锁有啥区别。
提示
全部评论
推荐
最新
楼层
吃口屎冷静下
Java
读读不互斥,读写互斥,写写互斥
3
回复
分享
发布于 2017-09-02 22:40
March..
Java
防止读的时候其他线程写,允许读的时候其他线程读
2
回复
分享
发布于 2017-09-02 22:35
滴滴
校招火热招聘中
官网直投
Albertnet
中国移动_PaaS产品部_软件开发工程师
读-写锁 (1)读写锁的出现原因: ReentrantLock实现一种标准的互斥锁,每次最多只有一个线程能持有ReentrantLock,限制了并发性,互斥是一种保守的加锁策略,虽然避免了“写/写”冲突和“写/读”冲突,但也避免了“读/读”冲突,而大部分情况下读操作比较多,如果此时能够放宽加锁需求,允许多个读操作的线程同时访问数据结构,可以提升程序的性能(只要每个线程保证读取到最新的数据,并且在读取数据时不会有其他线程修改数据就行) (2)ReentrantLock提供的非互斥的读写锁的定义 1)一个资源可以被多个读操作访问,或者被一个写操作访问,但两者不能读写操作同时进行。2)读-写锁是一种性能优化措施,可以实现更高的并发性,提高程序的性能。3)当锁的持有时间较长并且大部分操作都不会修改被守护的资源时,读-写锁可以提高并发性。
2
回复
分享
发布于 2017-09-03 08:02
驼君
北京工业大学 电子信息类
加读锁应该是防止在写入的时候读取,防止读取脏数据
1
回复
分享
发布于 2020-03-10 17:18
JasWag
Java
总的来说 读写互斥和读锁共享,再来说场景 单/多线程 1、单线程:锁可重入(多个读或多个写) 2、多线程:当前线程读阻塞其他线程写,当前线程写阻塞其他线程读写
1
回复
分享
发布于 2021-11-28 17:38
见习精神病
Java
加了读锁别的线程如果要加写锁就阻塞了呀
点赞
回复
分享
发布于 2017-09-02 22:42
向宇前桌
Java
处理高并发
点赞
回复
分享
发布于 2017-09-02 23:57
都拿我当备胎
Java
h_b吧
点赞
回复
分享
发布于 2017-09-03 00:04
浮生一梦暗若痴
C++
等你用到的时候就理解了
点赞
回复
分享
发布于 2017-09-03 01:26
Thare
淘天集团_技术专家
读锁:共享锁 写锁:排它锁
点赞
回复
分享
发布于 2017-09-03 02:00
等待offer
Java
请求读锁的线程进去之后,其他请求读锁线程可以继续进入。但此时,请求写锁的线程不能进入,会被阻塞,直到所有请求读锁的线程结束之后,才有可能进入。
点赞
回复
分享
发布于 2017-09-03 07:43
雪刚
Java
关键理解是同一锁对象 :用同一个锁对象, 在加了写锁的代码块执行期间,能阻塞 对该锁对象加写锁,当然也阻塞了写锁加锁和解锁之间的代码块的执行。
点赞
回复
分享
发布于 2018-11-23 18:28
牛客520318129号
加读锁,保证可重复读。 加写锁,自己写,也阻塞别人读,因为数据正在改动。
点赞
回复
分享
发布于 2020-12-04 23:00
厨师沙拉.
后端
刚学到这里,回复下自己的看法。因为读写锁锁住的不是共享资源,而是临界区,临界区里是对共享资源的操作,读写锁能控制多线程里的临界区对于共享资源访问的动作,但是不能控制共享资源不被别人访问。没有在锁住的临界区内的其它的线程依旧可以访问共享资源。所以如果不加读锁就会导致写的时候,共享资源被读。有此类问题的朋友可以试着写一下代码跑一下看看。
点赞
回复
分享
发布于 2022-02-16 22:54
滴滴
校招火热招聘中
官网直投
相关推荐
勇敢的火龙果摆烂了
04-14 20:11
上海交通大学 电子信息类
科大讯飞嵌入式岗面经
面试科大讯飞苏州分公司的嵌入式岗,不清楚为什么我投的是嵌入式软件设计,面试前才通知我是DSP开发。科大讯飞的面试是群面,一个负责人,一个工程师,主要是问项目相关内容。但是聊下来感觉和面试官总不在一个频道,我感觉面试官完全不懂我做过的东西,不清楚我做过项目的难点,反而去问一些他们熟悉或者他们自己也不懂的点,这点让我感觉很差。最后面完,问我要不要转岗,我没回复,这应该是我面试公司中给我感觉最差的公司。第一,我的简历中写得很清楚我的技能点,为什么明明不符合你们公司岗位需求,还约我去面试?第二,面试官在面试前可能压根没看过我简历,所以聊下来不断的在细问不建议大家去这家公司!!
点赞
评论
收藏
转发
阿珊和她的猫
03-16 23:12
前端工程师
Vite 是什么?
Vite是一个由Evan You(Vue.js的创始人)开发的新一代前端构建工具。它专注于提供快速的开发体验和优化的构建速度。与传统的前端构建工具,如Webpack相比,Vite有以下区别:https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=8e9ff865b0d84b46833cbfe45a5c001d构建速度:Vite利用了现代浏览器原生支持的ES模块特性,将依赖模块进行预编译,使得在开发过程中无需打包,减少了构建时间和磁盘IO。这使得项目启动和热重载更加迅速,大大提升了开发效率。开发体验:Vite支持基于原生ES模块的开发方式,可以直接在浏览器中运行源码,无需事先打包。同时,它还内置了一个非常轻量级的开发服务器,可以提供快速、自动的模块热重载,开发者可以即时看到修改后的效果。这种即时反馈的开发模式可以显著缩短开发迭代周期。按需导入:Vite通过静态分析代码的方式,可以实现按需加载模块,只导入应用程序所需的部分代码。https://www.nowcoder.com/issue/tutorial?zhuanlanId=Mg58Em&uuid=8e9ff865b0d84b46833cbfe45a5c001d
前端学习交流
点赞
评论
收藏
转发
laniakea42
03-16 22:26
信息技术岗
问个问题
大家都是用什么编辑的简历啊,我看很多排版都很像。我感觉我没有什么可写的,有什么好的建议嘛
点赞
评论
收藏
转发
Reik
03-28 15:55
已编辑
浙江大学 外国语言文学类
请教大二投暑期实习的时间
3月底:猪鹅米大厂都愿意给机会,其他厂看到应该是因为大二简历挂了6月份日常再冲一波想请教各位前辈大二找暑期实习的投递时间。是不是可以现在投暑期实习试一波然后五六月份再投一波日常实习?问过一些公司的hr暑期实习和日常实习是分开的,没有冷冻期。不过26届投25届的暑期是不是会被直接简历挂?感谢各位前辈的指导!⏳投递进度条碎碎念:最近看了好多学长学姐的帖子都说找工作很难,人均大奖、好几段大厂实习加上很牛的相关经历,把人都吓蠢了,搞得我好焦虑。害怕现在找不到暑期实习,五六月份也找不到日常实习就不知道该怎么办了 #没有实习经历,还有机会进大厂吗# #找实习多的是你不知道的事# #非技术岗是怎么找实习的# #我的实习求职记录#
没有实习经历,还有机会进大厂吗
找实习多的是你不知道的事
点赞
评论
收藏
转发
牛客420028086号
03-07 11:44
Java
23届2年Java经验求个内推
去年毕业的23毕业生,22年6月出来开始工作从事Java开发,到现在也差不多有2年经验了,一直负责SaaS类的项目开发,有过分布式部署,生产集群环境相关经验,独立完成过核心模块的研发交付。平时自己也会做一些技术类笔记和文章,追求代码的整洁和优雅追求新的NB技术和架构,喜欢在本地整多个虚拟机整整各种ES集群、Nginx集群、Redis哨兵等等。自己从大三开始就一直有独立做开源项目,目前已经开源了两个完整的SpringBoot项目。目前base广州担任后端开发,项目主要负责人,想跳槽换一个人多活跃的氛围,在这家公司没有晋升发展,boss基本没啥回复,有牛客老哥内推一波广州Java岗嘛本人技术栈这一块,除去最基本的Java基础以及Spring全家桶,对行为型设计模式比较熟练,项目中也多次用策略、责任链、工厂合理优化业务逻辑结构,确保核心模块的易扩展性和易维护性,在项目中运用过悲观锁/乐观锁/分布式锁等解决问题,负责过集群化部署,搭建过高可用Nginx集群、EFK分布式日志架构、高可用Logstash集群,Kafka生产消费分离部署,做过复杂的SQL报表/排班查询,对接过当下火热的AI大模型#Java##求职##社招##毕业生##后端#
Java求职圈
点赞
评论
收藏
转发
点赞
15
评论
分享
回复帖子
全站热榜
1
...
想来字节技术实习,看我这篇就够了!——保姆级面经大放送
2.3W
2
...
外卖员面试经验
1.9W
3
...
25届第一份实习怎么找?
1.6W
4
...
【0429快问快答】99%牛油的疑惑解答(更新至38个问题
1.3W
5
...
0实习经验上岸字节,分享一下过程经验
1.3W
6
...
【奖】来领牛币和静音鼠标啦~
1.1W
7
...
准备去参加自己的婚礼
8816
8
...
美团后端日常实习一二面(已oc)
8416
9
...
【💰有奖征集】非技术岗位笔面经邀你来分享!攒人品时间到!
6291
10
...
阿里国际 笔试 0429
5201
正在热议
#
牛友的五一计划
#
18787次浏览
383人参与
#
晒一晒我的offer
#
2832191次浏览
49981人参与
#
牛客帮帮团来啦!有问必答
#
401512次浏览
7837人参与
#
无实习如何秋招上岸
#
173463次浏览
2730人参与
#
如何看待offer收割机的行为
#
194783次浏览
2991人参与
#
如何一边实习一边秋招
#
201984次浏览
4009人参与
#
华为求职进展汇总
#
442975次浏览
4446人参与
#
春招别灰心,我们一人来一句鼓励
#
21608次浏览
314人参与
#
产品实习,你更倾向大公司or小公司
#
31293次浏览
491人参与
#
非技术岗薪资爆料
#
9050次浏览
188人参与
#
硬件人的春招flag
#
14570次浏览
199人参与
#
女生做医疗销售有前景吗
#
3899次浏览
49人参与
#
字节跳动工作体验
#
54075次浏览
1579人参与
#
聊聊这家公司值得去吗
#
63833次浏览
1280人参与
#
第一次面试
#
17971次浏览
277人参与
#
在国企工作的人,躺平了吗?
#
73052次浏览
883人参与
#
机械人,你的秋招第一份简历被谁挂了
#
27040次浏览
492人参与
#
来聊聊机械薪资天花板是哪家
#
22973次浏览
180人参与
#
你更愿意参加线上面试还是线下面试?
#
6998次浏览
95人参与
#
如何KTV领导
#
7559次浏览
73人参与
牛客网
牛客企业服务