锁是用来控制多个线程访问共享资源的方式,一般来说,一个锁能够防止多个线程同时访问共享资源(但是有些锁可以允许多个线程并发的访问共享资源,比如读写锁)。Java程序原先是靠synchronized关键字实现锁的功能,后续Java提供了基于Lock接口(以及相关实现类 ...