免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 10585 | 回复: 12
打印 上一主题 下一主题

在应用层如何实现原子操作 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-02-06 17:00 |只看该作者 |倒序浏览
内核下的原子操作函数 actomic_add, atomic_inc等在应用层可以调用吗,
不可以的话, 有没有相关的替代象window下 InterlockedAdd 等原子操作函数的替代函数

论坛徽章:
1
天蝎座
日期:2013-08-25 10:27:22
2 [报告]
发表于 2009-02-06 17:28 |只看该作者
加锁么?

论坛徽章:
0
3 [报告]
发表于 2009-02-06 17:34 |只看该作者
用原子操作函数可以实现加解锁的功能, 这个不需要用到锁把

论坛徽章:
0
4 [报告]
发表于 2009-02-06 21:35 |只看该作者
IPC 信号量

论坛徽章:
3
CU十二周年纪念徽章
日期:2013-10-24 15:41:34摩羯座
日期:2013-12-01 00:21:362015年迎新春徽章
日期:2015-03-04 09:49:45
5 [报告]
发表于 2009-02-09 14:37 |只看该作者
我也同意  用信号量吧

论坛徽章:
0
6 [报告]
发表于 2009-02-10 22:23 |只看该作者
怕是不得行喔?楼主问的是原子,不是同步与互斥喔!

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
7 [报告]
发表于 2009-02-10 23:19 |只看该作者
能巧妙的用移位等操作来实现的话,就是原子的。

论坛徽章:
3
戌狗
日期:2014-09-10 17:07:162015年辞旧岁徽章
日期:2015-03-03 16:54:15wusuopu
日期:2016-06-17 17:43:45
8 [报告]
发表于 2009-02-11 01:08 |只看该作者
自己参照内核代码写一下

论坛徽章:
0
9 [报告]
发表于 2009-02-11 20:56 |只看该作者
最先想到的就是自己做信号处理,防止被中断

论坛徽章:
0
10 [报告]
发表于 2009-02-13 15:46 |只看该作者
内核代码要屏蔽中断,应用层不行
信号量粒度较大, 比较耗时, 不想采用,
window平台下的interlocker等可以实现原子操作,
linux下驱动层下有atomic等函数实现这些功能, 不知应用层有没有对应的函数实现这些功能?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP