Linux下原子性操作,类似Windows下的InterLockedXXX

type __sync_fetch_and_add (type *ptr, type value);
type __sync_fetch_and_sub (type *ptr, type value);
type __sync_fetch_and_or (type *ptr, type value);
type __sync_fetch_and_and (type *ptr, type value);
type __sync_fetch_and_xor (type *ptr, type value);
type __sync_fetch_and_nand (type *ptr, type value);
type __sync_add_and_fetch (type *ptr, type value);
type __sync_sub_and_fetch (type *ptr, type value);
type __sync_or_and_fetch (type *ptr, type value);
type __sync_and_and_fetch (type *ptr, type value);
type __sync_xor_and_fetch (type *ptr, type value);
type __sync_nand_and_fetch (type *ptr, type value);

参考:

《Multithreaded simple data type access and atomic variables》

时间: 2024-08-08 17:52:31

Linux下原子性操作,类似Windows下的InterLockedXXX的相关文章

CentOS下安装MySQL,Windows下使用Navicat for MySql连接

安装 查看有没有安装过:          yum list installed mysql*          rpm -qa | grep mysql* 查看有没有安装包:          yum list mysql* 安装mysqlclient:          yum install mysql 安装mysql server端:          yum install mysql-server          yum install mysql-devel 启动&&停止

Ubuntu下使用wine安装Windows下的exe文件

工作环境为Ubuntu,类Linux系统.无法直接安装exe文件.借助Wine可以安装,但并不是所有Windows下的exe软件 都可以使用Wine进行安装. 有两种方式可以安装Wine到Ubuntu上.可以自己本地编译源码,也可以在终端中执行命令“sudo apt-get install wine”, 便自动从配置好的软件源下载并安装wine了. 安装完成后可以在配置选项中将Windows版本设置为Windows xp. 下边我们就使用Wine试着安装一款Windows下用于代码对比的软件Be

【原】无脑操作:Windows下搭建Kafka运行环境

Kafka是一种高吞吐量的分布式发布订阅消息系统 1.优点:① 通过磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能.② 高吞吐量:即使是非常普通的硬件Kafka也可以支持每秒数百万的消息.③ 支持通过Kafka服务器和消费机集群来分区消息.④ 支持Hadoop并行数据加载. 2.基本概念: ① Broker:Kafka集群包含的一个或多个服务器② Topic:每条发布到Kafka集群的消息都有一个类别主题.(物理上不同Topic的消息分开存储,逻辑上一

C++和C在linux下 和在windows下有什么区别?

一.函数库的区别 linux下的C函数库和windows下的函数库系统调用的机制不一样,Glibc包含了主要的C库.这个库提供了基本例程,用于分配内存.搜索目录.打开关闭文件.读写文件.字串处理.模式匹配.数学计算等等. 所说的机制不一样不单是指中断号的问题,中断号也是通过input参数和output把函数地址和输出地址定位在寄存器的,那些函数在windows和linux下的实现应该是不一样的,就拿文件系统来说,ext3和fat32的怎么可能一样.还有mm内存管理,都是不一样的.中断还是属于硬件

在 Windows 下远程桌面连接 Linux - VNC 篇

VNC是由AT&T试验室开发,是一款优秀的远程控制工具软件,后来以GPL授权的形式开源.经过几年的发展,现在的VNC已经不单指某个软件,而是一类软件的通称.下面介绍Linux下常用的两个VNC软件. VNC的原理就是不停的对窗口界面截屏,再将图像传输给客户端,同时VNC服务器端接管服务器端的键盘.鼠标控制权,客户端可以通过服务器端操纵键盘鼠标.比较类似Windows下的pcAnywhere. 一.Windows 端设置 先讲Windows端是因为,下述的两个VNC可以用同一个客户端连接. 在Wi

windows下使用xShell远程连接virtualbox里面的linux

第一阶段:基本安装 安装virtual box 在virtualbox里面安装xubuntu:是ubuntu+xfce桌面环境的一个linux的发行版本 在windows下安装Xmanager Enterprise 5[用其中的Xshell,建立远程连接] 第二阶段:基本设置 在windows下用cmd--ipconfig查看VirtualBox Host-Only Network找到IPv4地址:192.168.56.1[一般都是这个] 在xubuntu下的terminal--ifconfig

搭建linux下的DNW烧写环境(替代windows下的超级串口终端和DNW)

软件环境:ubuntu 13.10 硬件环境:TQ2440开发板 由于我的PC机操作系统是win8.1,不知何故死活装不上天嵌给的USB下载驱动,所以在PC下烧写开发板系统和裸机程序变得不可能,后来经过一番摸索,发现完全可以在linux下用minicom代替windows下的超级串口终端,用dnw2(linux版本)代替windows下的DNW,下面是具体的环境搭建过程: 搭建linux下的minicom串口通信环境: 1.1 下载并安装minicom,在终端输入命令:sudo apt-get

将Windows下的文件同步到Linux下

需求:把Windows下的某些文件自动传送到Linux指定目录下 实现: 1. Windows下安装 WinSCP工具,并把Liunx服务器信息保存 2. 编写脚本,实现双击工具就把Windows下的文件上传到Linux下, ========================== copyFile.txt =====================================START=========== option echo offoption batch onoption confir

在Linux(Ubuntu/openSUSE/CentOS)下配置ASP.NET(Apache + Mono)转载+补充

错误:Network error: Connection refused 解决办法: 执行 $sudo apt-get install openssh-server 安装ssh协议 执行ifconfig显示Ubuntu的ip地址 xp中用putty输入Ubuntu的ip用ssh协议远程登录 过程如下 login as: jtone[email protected]'s password:Linux jtone-desktop 2.6.28-11-generic #42-Ubuntu SMP Fr