当一个任务写入变量而其他任务读取该变量时,我们是否需要信号量?

2023-12-12

我正在研究 freeRtos,并且我有一个名为 x 的变量。现在,每秒只有一个任务正在写入该变量,而其他任务正在读取该变量值。我需要用互斥锁来保护变量吗?


如果变量为 32 位或更小,并且其值是独立的并且不与任何其他变量一起解释,则不需要互斥体。

如果您有一个大于 32 位的数据项,或者您有多个必须保持在一起的数据项(例如:记录亮度和颜色的光传感器),那么您需要一个互斥体,以便读者无法获取其中的一部分旧数据和部分新数据。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

当一个任务写入变量而其他任务读取该变量时,我们是否需要信号量? 的相关文章

随机推荐