⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 atomic.cpp

📁 跨操作系统的微型中间件
💻 CPP
字号:
#include "atomic.h"#include "OSMutex.h"static OSMutex sAtomicMutex;unsigned int atomic_add(unsigned int *area, int val){    OSMutexLocker locker(&sAtomicMutex);    *area += val;    return *area;}unsigned int atomic_sub(unsigned int *area,int val){    return atomic_add(area,-val);}unsigned int atomic_or(unsigned int *area, unsigned int val){    unsigned int oldval;    OSMutexLocker locker(&sAtomicMutex);    oldval=*area;    *area = oldval | val;    return oldval;}unsigned int compare_and_store(unsigned int oval, unsigned int nval, unsigned int *area){   int rv;    OSMutexLocker locker(&sAtomicMutex);    if( oval == *area )    {    rv=1;    *area = nval;    }    else    rv=0;    return rv;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -