首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >像std::atomic_is_lock_free这样的c型原子自由函数是用来做什么的?

像std::atomic_is_lock_free这样的c型原子自由函数是用来做什么的?
EN

Stack Overflow用户
提问于 2021-03-11 14:34:35
回答 1查看 102关注 0票数 4

据我所知,std::atomic_is_lock_free是与std::atomic<T>::is_lock_free相对应的c风格的自由函数.

但是这个函数的参数类似于std::atomic_is_lock_free(const std::atomic<T>*)std::atomic<T>不是c样式的语法,所以std::atomic_is_lock_free不能在c文件中使用。

那么为什么引入这个c风格的免费函数呢?这个有什么用?

编辑:

下面是C++并发在行动中的解释。

--自由函数被设计成与C兼容的,所以它们在所有情况下都使用指针而不是引用。例如.

它说免费功能是为了C-兼容性。但我想不出一个好例子。

EN

回答 1

Stack Overflow用户

发布于 2021-03-11 17:31:46

这两者似乎没有任何区别,因为根据草案语言,这两个函数都需要一个实际的对象,这甚至给出了两个函数的完全相同的描述。

这似乎是在需求“所有相同类型的原子对象的无锁查询的结果是相同的”之前的一个暂停.考虑到这一要求,能够在没有任何对象实例的情况下查询类型是很有用的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66584648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档