使用synchronized关键字和锁之间有什么区别

Java 5引入了lock方法。 使用锁的任何利弊与synchronized关键字相比?

‘synchronize’将锁定方法中访问的所有资源。 ‘lock’允许您更细粒度和控制(例如,仅锁定某些资源,或仅在满足某个条件时锁定)。

这个链接顶部附近有一个非常好的代码示例: http : //download.oracle.com/javase/1.5.0/docs/api/java/util/concurrent/locks/Lock.html

java.util.concurrent锁可以让您更好地控制锁定的内容和时间。 如果它符合您的需要,您仍然可以使用synchronized关键字(例如,如果您需要按实例/每类同步)

查看synchronized关键字和锁定之间的区别 在此处输入图像描述