EDA365电子论坛网

标题: 多个线程或中断都需要传输数据给一个专门的线程吗? [打印本页]

作者: abc66    时间: 2022-10-21 13:59
标题: 多个线程或中断都需要传输数据给一个专门的线程吗?
两个线程之间不需要进行同步。只有一些状态需要从A线程传输到B线程。1 @& r% O& m9 C' |; ^+ {

6 L8 R) y" V% [2 X" m如果说数据只有一个字节的话,还有需要使用线程通信的那些函数去使用吗?是不是直接用全局变量更快更好呢?; }+ |1 ?+ s+ B6 Y5 a1 n9 B. m" Y6 D

4 R& Y+ c4 [- Y$ s( E6 z另一种就是多个线程或中断都需要传输数据给一个专门的线程,这样也需要每个线程都用通信函数去传输吗?( [: Y4 q3 t) K( u5 ?

9 W8 H. V. a8 [比如说我有一个按键线程判断完按键状态后,执行函数去变更数据。然后另一个线程根据变更的数据去进行相应动作。再有一个线程专门读取动作数据,通过串口发送到上位机。这种需要线程通信吗?
* I0 \( G' g/ ?; F# S
3 L# Y4 V7 v/ W4 \# y4 p- [现在想用操作系统,但是感觉用的就像裸机带了个os一样用法。那些通信函数是会用,总感觉用了不方便,一个字节也要传输,不在同一个区域的数据也要传输。不如全局变量方便。; B7 p  g$ H; h+ i# |: m7 f

作者: three    时间: 2022-10-21 14:56
对实时性没要求的话,可以使用全局变量传递,接收数据的线程模块提供一个接口函数其它线程调用接口函数即可; D! E( b$ h. w+ z& o, o( X1 i5 j

作者: opipo    时间: 2022-10-21 15:28
多个线程调用些函数时,须注意避免访问冲突问题
7 ?# m; m+ l8 C( N




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2