并发执行
如何串行?
如何串行?
答: 粘接。即:
- 单个节点是原子性的、
- 失当的粘接多个节点
留神: 单节点原子性 由组件实现,而 失当的粘接 由利用提供。
如何串行举例:
A. 多个cas指令失当的粘接在一起 能够达到 确定的程序 。
这里 失当的粘接是: 操作cas所用的值序列是递增的或递加的单个cas指令 是原子性的,因为cas是 两条指令合并为一条指令 这条指令就是cas指令
对cpu来说,单条cpu指令是原子性的 是不被打断的,因为cpu总是在一条指令完结时才查看是否有中断要跳转过来。而在一条指令两头是不进行中断查看的
B. zk的一个写操作是原子性的, 用版本号将这些写操作粘接在一起,能够达到 确定的程序,这也即 乐观锁 实现。
这里 失当的粘接是: 版本号