相同点:lock可以实现synchronized的所有功能
不同点:Lock有比synchronized更精确的线程语义和更好的性能
synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且必须在finally从句中释放。Lock还有更强大的功能,例如,它的tryLock方法可以非阻塞方式去拿锁。
简述synchronized和java.util.concurrent.locks.lock的异同
最新推荐文章于 2021-07-04 23:48:05 发布
相同点:lock可以实现synchronized的所有功能
不同点:Lock有比synchronized更精确的线程语义和更好的性能
synchronized会自动释放锁,而Lock一定要求程序员手工释放,并且必须在finally从句中释放。Lock还有更强大的功能,例如,它的tryLock方法可以非阻塞方式去拿锁。