Skip to main content

Deadlock and Lock Types

锁的类型

  1. 基本锁
    1. 互斥锁
      1. 加锁失败后,会释放CPU,给其他线程
    2. 自旋锁
      1. 加锁失败后,会忙等待,直到它拿到锁
  2. 读写锁
    1. 读锁可以与读锁共存
    2. 写锁是互斥锁
  3. 形式
    1. 悲观锁。认为资源被同时更新的几率大,所以要加锁才能够修改数据。
    2. 乐观锁。认为资源被同时更新的几率小,所以可以先修改数据,再考虑加锁,如果加锁失败则回滚操作。