黑马程序员技术交流社区

标题: 读写ReadWriteLock中疑惑 [打印本页]

作者: 谢洋    时间: 2013-2-23 22:38
标题: 读写ReadWriteLock中疑惑
本帖最后由 谢洋 于 2013-2-25 19:12 编辑

这是api文档中描述:
1、ReadWriteLock 维护了一对相关的锁,一个用于只读操作,另一个用于写入操作

。只要没有 writer,读取锁可以由多个 reader 线程同时保持。写入锁是独占的。

2、所有 ReadWriteLock 实现都必须保证 writeLock 操作的内存同步效果也要保持

与相关 readLock 的联系。也就是说,成功获取读锁的线程会看到写入锁之前版本

所做的所有更新


我的理解是:被readLock上锁的代码可以同时被多个线程访问,如果是这样,那这跟没上锁好像没有区别?
假设有两段代码:一段可以并发访问(用readLock或不上锁),另一段每次只能被一个线程访问(用writerLock锁上),这样子行吗?如果可以并发访问那一段不上readLock可以吗?
第二句完全看不懂;

谁能给个详细的解答,最好有代码演示说明
作者: 张宁    时间: 2013-2-25 15:58
大哥,首先肯定您对这个问题的较真,其二,我不会这个问题。其三,建议你求助google




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2