采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
在《Java并发编程》中,关于ReentrantReadWriteLock的读写锁的升降级问题。书上说一个线程持有写锁的同时,可以再去获取读锁,同时不允许其他写线程修改资源?这个不是很明白,还有就是书里称写线程获取读锁的行为是锁的降级(写入锁降级为读取锁),而不支持读取锁升级(为什么读取锁变为写入锁就是升级,而写入锁变为读取锁就是降级?)为写入锁(书上说是因为怕升级导致死锁??)
你好,从写锁变成读锁属于锁降级,从读锁变成写锁属于锁升级,因为读锁是可以被多线程共享的,写锁是单线程独占的,写锁的并发限制比读锁高,这应该就是升级和降级名称的来源。
读锁升级为写锁,确实有可能导致死锁,这个之前有学员问过,具体可以参考:http://coding.imooc.com/learn/questiondetail/49267.html
登录后可查看更多问答,登录/注册
构建完整并发与高并发知识体系,倍增高薪面试成功率!
1.7k 1
1.1k 18
1.2k 15
3.6k 12
1.3k 12