当前位置:网站首页>B_QuRT_User_Guide(40)
B_QuRT_User_Guide(40)
2022-07-07 21:52:00 【weixin_38498942】
B_QuRT_User_Guide(40)
- 27.19 qurt_atomic_dec_return()
- 27.20 qurt_atomic_compare_and_set()
- 27.21 qurt_atomic_barrier()
- 27.22 qurt_atomic64_set()
- 27.23 qurt_atomic64_and_return()
- 27.24 qurt_atomic64_or()
- 27.25 qurt_atomic64_or_return()
- 27.26 qurt_atomic64_xor_return()
- 27.27 qurt_atomic64_set_bit()
- 27.28 qurt_atomic64_clear_bit()
- 27.29 qurt_atomic64_change_bit()
- 27.30 qurt_atomic64_add()
- 27.31 qurt_atomic64_add_return()
- 27.32 qurt_atomic64_sub_return()
- 27.33 qurt_atomic64_inc()
- 27.34 qurt_atomic64_inc_return()
- 27.35 qurt_atomic64_dec_return()
- 27.36 qurt_atomic64_compare_and_set()
27.19 qurt_atomic_dec_return()
27.19.1 功能文档
27.19.1.1 static QURT_INLINE unsigned int qurt_atomic_dec_return ( unsigned int ∗target )
将原子变量减一。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
返回值
减值。
依赖项
None.
27.20 qurt_atomic_compare_and_set()
27.20.1 功能文档
27.20.1.1 static QURT_INLINE unsigned int qurt_atomic_compare_and_set (unsigned int ∗ target, unsigned int old_val, unsigned int new_val )
将原子变量的当前值与指定值进行比较,并在比较成功时设置为新值。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | old_val | 要比较的旧值。 |
in | new_val | 要设置的新值。 |
返回值
FALSE – 指定值不等于当前值。
TRUE – 指定值等于当前值。
依赖项
None.
27.21 qurt_atomic_barrier()
27.21.1 功能文档
27.21.1.1 static QURT_INLINE void qurt_atomic_barrier ( void )
允许编译器对函数前后发出的内存操作强制执行排序约束。
返回值
None.
依赖项
None.
27.22 qurt_atomic64_set()
27.22.1 功能文档
27.22.1.1 static QURT_INLINE unsigned long long qurt_atomic64_set ( unsigned long long ∗ target, unsigned long long value )
使用指定值设置 64 位原子变量。
参数
in,out | target | 指向原子变量的指针。 |
in | value | 要设置的 64 位值。 |
返回值
成功设置值。
依赖项
None.
27.23 qurt_atomic64_and_return()
27.23.1 功能文档
27.23.1.1 static QURT_INLINE unsigned long long qurt_atomic64_and_return (unsigned long long ∗ target, unsigned long long mask )
带掩码的 64 位原子变量的按位与运算。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | mask | 按位与的 64 位掩码。 |
返回值
带有掩码的 64 位原子变量的 AND 结果。
依赖项
None.
27.24 qurt_atomic64_or()
27.24.1 功能文档
27.24.1.1 static QURT_INLINE void qurt_atomic64_or ( unsigned long long ∗ target,unsigned long long mask )
带掩码的 64 位原子变量的按位或运算。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | mask | 按位或的 64 位掩码。 |
返回值
None.
依赖项
None.
27.25 qurt_atomic64_or_return()
27.25.1 功能文档
27.25.1.1 static QURT_INLINE unsigned long long qurt_atomic64_or_return (unsigned long long ∗ target, unsigned long long mask )
带掩码的 64 位原子变量的按位或运算。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | mask | 按位或的 64 位掩码。 |
返回值
带有掩码的原子变量的OR结果。
依赖项
None.
27.26 qurt_atomic64_xor_return()
27.26.1 功能文档
27.26.1.1 static QURT_INLINE unsigned long long qurt_atomic64_xor_return (unsigned long long ∗ target, unsigned long long mask )
带掩码的 64 位原子变量的按位异或运算。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | mask | 用于按位异或的 64 位掩码。 |
返回值
带有掩码的原子变量的XOR结果。
依赖项
None.
27.27 qurt_atomic64_set_bit()
27.27.1 功能文档
27.27.1.1 static QURT_INLINE void qurt_atomic64_set_bit ( unsigned long long ∗target, unsigned int bit )
在 64 位原子变量中的指定位置设置一个位。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | bit | 要设置的bit位置。 |
返回值
None.
依赖项
None.
27.28 qurt_atomic64_clear_bit()
27.28.1 功能文档
27.28.1.1 static QURT_INLINE void qurt_atomic64_clear_bit ( unsigned long long ∗target, unsigned int bit )
清除 64 位原子变量中指定位置的位。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | bit | 要清除的bit位置。 |
返回值
None.
依赖项
None.
27.29 qurt_atomic64_change_bit()
27.29.1 功能文档
27.29.1.1 static QURT_INLINE void qurt_atomic64_change_bit ( unsigned long long ∗target, unsigned int bit )
在bit位置的 64 位原子变量中切换位。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | bit | 要切换的bit位置。 |
返回值
None.
依赖项
None.
27.30 qurt_atomic64_add()
27.30.1 功能文档
27.30.1.1 static QURT_INLINE void qurt_atomic64_add ( unsigned long long ∗ target,unsigned long long v )
将 64 位整数加到 64 位原子变量。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | v | 要加的 64 位整数值。 |
返回值
None.
依赖项
None.
27.31 qurt_atomic64_add_return()
27.31.1 功能文档
27.31.1.1 static QURT_INLINE unsigned long long qurt_atomic64_add_return (unsigned long long ∗ target, unsigned long long v )
将 64 位整数加到 64 位原子变量。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | v | 要加的 64 位整数值。 |
返回值
算术和的结果。
依赖项
None.
27.32 qurt_atomic64_sub_return()
27.32.1 功能文档
27.32.1.1 static QURT_INLINE unsigned long long qurt_atomic64_sub_return (unsigned long long ∗ target, unsigned long long v )
从原子变量中减去一个 64 位整数。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | v | 要减去的 64 位整数值。 |
返回值
算术减法的结果。
依赖项
None.
27.33 qurt_atomic64_inc()
27.33.1 功能文档
27.33.1.1 static QURT_INLINE void qurt_atomic64_inc ( unsigned long long ∗ target )
将 64 位原子变量加一。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
返回值
None.
依赖项
None.
27.34 qurt_atomic64_inc_return()
27.34.1 功能文档
27.34.1.1 static QURT_INLINE unsigned long long qurt_atomic64_inc_return (unsigned long long ∗ target )
将 64 位原子变量加一
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
返回值
增量值。
依赖项
None.
27.35 qurt_atomic64_dec_return()
27.35.1 功能文档
27.35.1.1 static QURT_INLINE unsigned long long qurt_atomic64_dec_return (unsigned long long ∗ target )
将 64 位原子变量减一。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
返回值
减值。
依赖项
None.
27.36 qurt_atomic64_compare_and_set()
27.36.1 功能文档
27.36.1.1 static QURT_INLINE int qurt_atomic64_compare_and_set ( unsigned long long ∗ target, unsigned long long old_val, unsigned long long new_val )
将 64 位原子变量的当前值与指定值进行比较,并在比较成功时设置为新值。
注意:该函数会重试,直到加载锁定和条件存储成功。
参数
in,out | target | 指向原子变量的指针。 |
in | old_val | 要比较的 64 位旧值。 |
in | new_val | 要设置的 64 位新值。 |
返回值
FALSE – 指定值不等于当前值。
TRUE – 指定值等于当前值。
依赖项
None.
边栏推荐
- Coreseek: the second step is index building and testing
- Why does the market need low code?
- 【微服务|SCG】gateway整合sentinel
- Ros2 topic (03): the difference between ros1 and ros2 [02]
- Network security sqlmap and DVWA explosion
- Caip2021 preliminary VP
- USB (十八)2022-04-17
- 欢聚时代一面
- UE4_UE5蓝图command节点的使用(开启关闭屏幕响应-log-发布全屏显示)
- Tree background data storage (using webmethod) [easy to understand]
猜你喜欢
PMP项目管理考试过关口诀-1
When copying something from the USB flash disk, an error volume error is reported. Please run CHKDSK
JS get the key and value of the object
【微服务|SCG】gateway整合sentinel
Talk about the design and implementation logic of payment process
Oracle-数据库的备份与恢复
leetcode-520. 检测大写字母-js
在软件工程领域,搞科研的这十年!
Adults have only one main job, but they have to pay a price. I was persuaded to step back by personnel, and I cried all night
Solve the problem of duplicate request resource paths /o2o/shopadmin/o2o/shopadmin/getproductbyid
随机推荐
【微服务|SCG】gateway整合sentinel
Caip2021 preliminary VP
Unity3D学习笔记6——GPU实例化(1)
Wechat forum exchange applet system graduation design (3) background function
Dynamics 365 find field filtering
CXF call reports an error. Could not find conduct initiator for address:
The 19th Zhejiang Provincial College Programming Contest VP record + supplementary questions
漏洞复现----49、Apache Airflow 身份验证绕过 (CVE-2020-17526)
POJ2392 SpaceElevator [DP]
做自媒体视频剪辑怎么赚钱呢?
FreeLink开源呼叫中心设计思想
[microservices SCG] gateway integration Sentinel
2022 届的应届生都找到工作了吗?做自媒体可以吗?
LDO稳压芯片-内部框图及选型参数
USB (十七)2022-04-15
Technology at home and abroad people "see" the future of audio and video technology
【编译原理】词法分析设计实现
LeeCode -- 6. Z 字形变换
Force deduction solution summary 648 word replacement
移动端异构运算技术 - GPU OpenCL 编程(基础篇)