Sequence Lock Linux同步原语之顺序锁( 三 )

  • 被保护的数据结构不包括被写者修改和被读者间接引用的指针 。否则,写者可能会在读者正在读指针指向的数据的时候就将该指针变失效了 。
  • 读者的临界区代码除了读数据外没有别的会引起其它副作用的操作 。否则,多个读者的操作会互相竞争 。这是因为顺序锁的读者并没有任何其它锁来保护,大家是并发读取的,只是简单的用了一对读内存屏障来保护 。
  • 顺序锁不会造成读者和写者休眠 。
  • 最常见的,在Linux内核中,更新系统jiffies就是使用的顺序锁 。

    【Sequence Lock Linux同步原语之顺序锁】


    推荐阅读