并发执行

如何串行?

如何串行?
答: 粘接。即:

  1. 单个节点是原子性的、
  2. 恰当的粘接多个节点

注意: 单节点原子性 由组件实现,而 恰当的粘接 由应用提供。

如何串行举例:

A. 多个cas指令恰当的粘接在一起 可以达到 确定的顺序 。
这里 恰当的粘接是: 操作cas所用的值序列是递增的或递减的

单个cas指令 是原子性的,因为cas是 两条指令合并为一条指令 这条指令就是cas指令
对cpu来说,单条cpu指令是原子性的 是不被打断的,因为cpu总是在一条指令结束时才检查是否有中断要跳转过去。而在一条指令中间是不进行中断检查的

B. zk的一个写操作是原子性的, 用版本号将这些写操作粘接在一起,可以达到 确定的顺序,这也即 乐观锁 实现。
这里 恰当的粘接是: 版本号

林林
0 声望1 粉丝