当我第一次阅读易立推荐的《Java并发编程实践》的时候,这只是一本技术参考书,在众多介绍并发程序的书中因为其作者的大名而鹤立鸡群。然而其中对我们生活着这个并行的世界,进行了有趣而丰富的阐述,看似平淡无奇的现象里总是有着深刻而简洁的真理。
第13章对如何使用显示锁进行了精彩论述。 其实我们有了synchronized块这样足够用的功能,多数情况下不需要为引入灵活性带来一定的危险性。文中从一个简单的Map读写入手,先使用synchronized来保证并发安全,紧接着进行活跃度和性能分析(主要是吞吐量分析),指出可以改进的空间,既可以使用显示可重入锁来增加灵活性;再接着分析实际的使用情况,还可以采用更加细粒度的可重入读写锁,获得更好的性能。这个简单的例子堪称循序渐进由浅入深论述的典范,而这样的例子在本书中屡屡出场。相信读者一定会受益匪浅。