Skip to content

Latest commit

 

History

History
22 lines (20 loc) · 682 Bytes

显式锁.md

File metadata and controls

22 lines (20 loc) · 682 Bytes

显式锁

使用 synchronized 关键字将会隐式的获取锁,但是它将锁的获取和释放固化了,这种方式简化了同步的管理,但是可扩展性和灵活性较差。通过使用 Java 提供的显式锁,我们可以更加灵活地使用锁处理同步,并且可以方便地自定义锁。下面是与 synchronized 相比,显式锁特有的功能:

  • 可以尝试非阻塞的获取锁

  • 在获取锁时可以响应中断

  • 在获取锁时可以响应超时

  • 公平锁

  • 非公平锁

  • 自旋锁

  • 可重入锁

  • 偏向锁

  • 轻量级锁

  • 重量级锁

  • 读写锁

  • 互斥锁

  • 锁消除

  • 锁粗化

  • 悲观锁

  • 乐观锁

  • 共享锁

  • 排他锁