Lock ReentrantLock synchronized
时间:2014-03-31 11:46:53
收藏:0
阅读:535
参考:
http://blog.csdn.net/fw0124/article/details/6672522
synchronized (lockObject) { // update object state }
Lock lock = new ReentrantLock(); lock.lock(); try { // update object state } finally { lock.unlock(); }
ReentrantLock 性能更好,扩展性,继承类更多,但是 unlock 有时候容易忘记写,很多人不是很熟悉
Lock
框架是同步的兼容替代品,它提供了 synchronized
没有提供的许多特性,它的实现在争用下提供了更好的性能。但是,这些明显存在的好处,还不足以成为用 ReentrantLock
代替 synchronized
的理由。相反,应当根据您是否 需要 ReentrantLock
的能力来作出选择。大多数情况下,您不应当选择它
—— synchronized 工作得很好,可以在所有 JVM
上工作,更多的开发人员了解它,而且不太容易出错。只有在真正需要 Lock
的时候才用它
Lock ReentrantLock synchronized,布布扣,bubuko.com
原文:http://www.cnblogs.com/wjw334/p/3633931.html
评论(0)