首页 > 代码库 > 多线程中数的原子性加减

多线程中数的原子性加减

int SomeInt=0;

InterlockedIncrement(&SomeInt);//自增

InterlockedDecrement(&SomeInt);//自减

 

InterlockedDecrement(&SomeInt)的执行过程是这样的
{
__禁止其他线程访问 (&SomeInt) 这个地址
SomeInt --;
move EAX, someInt; // 设定返回值,C++函数的返回值 都放在EAX中,
__开放其他线程访问 (&SomeInt) 这个地址
}

多线程中数的原子性加减