Java中各种锁的详解

Java中多种锁的实现详解

1、synchronized和Lock

java中有两种锁的加锁方式:一种是用于synchronized关键字,另一种是用Lock接口实现类

形象地说,synchronized关键字是自动挡,可以满足一切日常驾驶需求。但是如果你想要玩其他的骚操作,就需要手动挡—各种Lock实现类

所以如果你只是想要简单的加个锁,对性能也没有什么特别的要求,用synchronized关键字就足够了。自从Java 5 之后,才在java.util.concurrent.locks包下有了另一种方式来实现锁那就是Lock。也就是说,synchronized是Java语言内置的关键字,而Lock是一个接口,这个接口的实现类在代码层面实现了锁的功能,具体实现有兴趣可以自己研究一下哦。

Java