原子操作在线程同步中的地位非常重要,它保证了当线程访问某资源时其它线程无法在同一时刻访问该资源。以下面的代码为例:
// Define a global variable
long g_x = 0;
DWORD WINAPI ThreadFunc1(PVOID pvParam)
{
g_x ++;
return 0;
}
DWORD WINAPI ThreadFunc2(PVOID pvParam)
{
g_x ++;
return 0;
}
g_x被声明为全局变量并初始化为0,现在假如我创建了两个线程,一个执行ThreadFunc1,另一个执行ThreadFunc2。Thre...
Interlocked, 多线程编程阅读全文