美文网首页
lock锁与synchronized的区别

lock锁与synchronized的区别

作者: 赌未来_e1e8 | 来源:发表于2019-05-15 22:20 被阅读0次

1  lock是显示锁(手动开启和关闭锁,别忘关闭锁)synchronized是隐式锁

2  Lock只有代码块锁,synchronized有代码块锁和方法锁,

3 使用lock锁,JVM讲话费较少的时间来调度线程,性能更好,并且具有更好的扩展性(提供更多的子类)

4 Lock确保当一个线程位于代码的临界区时,另一个线程不进入临界区。如果其他线程试图进入锁定的代码,则它将一直等待(即被阻止),直到该对象被释放。Lock()方法会对lock()实例对象进行加锁,因此所有对该对象调用lock()方法的线程都会被阻塞,直到该lock对象的unlock()方法被调用

相关文章

网友评论

      本文标题:lock锁与synchronized的区别

      本文链接:https://www.haomeiwen.com/subject/qqlvaqtx.html