文章归档

1、spinlock

关于MCS Spinlock的锁释放问题补充一点,关键的问题是,A在判断自己是否是最后一个申请者和如果是的话就释放mcs_lock,这两个操作无法保证原子性(而且必须是原子才行,因为这中间如果出现新的申请者,情况就会变化),所以 才要依赖cmp_and_swap操作。

ticket spinlock和mcs_spinlock其实思路是一样的。

还有很重要的一个就是:申请了锁却忘了释放绝对是致命的

2、RCU

Leave a Reply

You can use these HTML tags

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>