首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

哪位高手知道全局原子变量这个概念啊有什么用

2012-08-16 
谁知道全局原子变量这个概念啊,有什么用全局原子变量,是API中的定义,谁知道是怎么用的啊,怎么定义怎么调用

谁知道全局原子变量这个概念啊,有什么用
全局原子变量,是API中的定义,谁知道是怎么用的啊,怎么定义
怎么调用

[解决办法]
得说汇编了,

以 a += 1;为例

汇编代码就是
把a的值放入 寄存器,(1)
inc 指令调用。(2)
然后把寄存器的值 放回 内存(也就是变量,3)

至少是这三步,在多线程的情况下,这样的操作,可能被其他线程的指令穿插其中,
那么最后的结果就很有可能是不正确的。

那么保证其逻辑结果正确的办法就是让上面3个指令 作为 一个 “原子操作”执行,不会被插入其他的指令。

这样就线程安全了。,

热点排行