2013年11月26日

.NET:通过 CAS 来理解数据库乐观并发控制,顺便给出无锁的 RingBuffer。

摘要: 背景大多数企业开发人员都理解数据库乐观并发控制,不过很少有人听说过 CAS(我去年才听说这个概念),CAS 是多线程乐观并发控制策略的一种,一些无锁的支持并发的数据结构都会使用到 CAS,本文对比 CAS 和 数据库乐观并发控制,以此达到强化记忆的目的。CASCAS = Compare And Swap多线程环境下 this.i = this.i + 1 是没有办法保证线程安全的,因此就有了 CAS,CAS 可以保证上面代码的线程安全性,但是 CAS 并不会保证 Swap 的成功,只有 Compare 成功了才会 Swap,即:没有并发发生,即:在我读取和修改之间没有别人修改。另外说一点,如果 阅读全文

posted @ 2013-11-26 08:57 幸福框架 阅读(2514) 评论(6) 推荐(5) 编辑

导航

我要啦免费统计