C++ 比较了我的功能。
在“solaris 5.10”中,一切正常!但是在“solaris 5.9”中,如果我没有原型,它会给我错误“函数“atomic_add_32_nv”必须有原型。”
请帮我!
C++ 比较了我的功能。
在“solaris 5.10”中,一切正常!但是在“solaris 5.9”中,如果我没有原型,它会给我错误“函数“atomic_add_32_nv”必须有原型。”
请帮我!
<atomic.h>
据我记得,原子函数支持(通过)是在 Solaris 10 中添加的。谷歌搜索“solaris 10 atomic operations”似乎通过各种点击来支持这一点。
在 Solaris 9 上,您要么需要使用互斥锁(这比原子操作慢得多;但对您的应用程序可能无关紧要)提供包装器,要么使用汇编器实现这些功能(每个处理器/架构 x86/sparc,您需要支持)。
您还可以看看常见的开源项目(例如 apache httpd、boost)是如何做到这一点并从那里开始的。
有关相关讨论,请参阅此SO 主题。