mike_wang
驱动中牛
驱动中牛
  • 注册日期2003-01-22
  • 最后登录2012-01-04
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望10点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
阅读:2280回复:3

InterlockedIncrement???

楼主#
更多 发布于:2002-11-21 14:52
2000ddk中的这个函数有什么作用啊?看文档看了n遍,英文太差。
不得要领,请教各位了!


给分的 :D
ydyuse
驱动老牛
驱动老牛
  • 注册日期2002-07-25
  • 最后登录2005-03-26
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2002-11-21 14:59
这儿有一段:
InterlockedIncrement向内存中的长整型变量加1,并返回加1后的值:

LONG result = InterlockedIncrement(pLong);
 

pLong是类型为LONG的变量的地址,概念上,该函数的操作等价于C语句:return ++*pLong,但它与简单的C语句的不同地方是提供了线程安全和多处理器安全。InterlockedIncrement可以保证整数变量被成功地增1,即使其它CPU上的线程或同一CPU上的其它线程同时尝试改变这个整数的值。就操作本身来说,它不能保证所返回的值仍是该变量当前的值,甚至即使仅仅过了一个机器指令周期,因为一旦这个增1原子操作完成,其它线程或CPU就可能立即修改这个变量。

生命驱动,活力无限!
mike_wang
驱动中牛
驱动中牛
  • 注册日期2003-01-22
  • 最后登录2012-01-04
  • 粉丝0
  • 关注0
  • 积分91分
  • 威望10点
  • 贡献值0点
  • 好评度9点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2002-11-21 15:03
烟斗兄,太感谢你了!给你份! :)
lvyikuku
驱动牛犊
驱动牛犊
  • 注册日期2007-08-22
  • 最后登录2009-08-20
  • 粉丝0
  • 关注0
  • 积分8分
  • 威望22点
  • 贡献值0点
  • 好评度4点
  • 原创分0分
  • 专家分0分
地板#
发布于:2008-08-26 20:04
InterlockedIncrementInterlockedIncrement
游客

返回顶部