502398542 发表于 2019-4-4 16:04:49

任务通知的问题

使用xTaskNotifyWait()或者ulTaskNotifyTake()阻塞任务,接到一个通知后,任务开始运行,如果运行期间又收到了多个通知,后面的通知会被抛弃吗?还是会存起来?如果存起来最多能存多少个?

byccc 发表于 2019-4-4 16:06:24

不会存起来,这个是直接设置的TCB任务控制块的变量。

502398542 发表于 2019-4-4 16:10:02

byccc 发表于 2019-4-4 16:06
不会存起来,这个是直接设置的TCB任务控制块的变量。

就是说,如果通知太频繁,任务处理不过来,后面的通知就丢了?

这么说这种阻塞方式不太适用于我说的这种情况?

byccc 发表于 2019-4-4 16:13:01

502398542 发表于 2019-4-4 16:10
就是说,如果通知太频繁,任务处理不过来,后面的通知就丢了?

这么说这种阻塞方式不太适用于我说的这 ...

是的,推荐用消息队列。

502398542 发表于 2019-4-4 16:32:13

byccc 发表于 2019-4-4 16:13
是的,推荐用消息队列。

好的,多谢

caoenq 发表于 2022-11-3 11:14:08

byccc 发表于 2019-4-4 16:13
是的,推荐用消息队列。

你好,大佬,可不可以这样做:仍然使用任务通知的方式,只是把等待通知的这个任务设置的优先级最高,这样就不会丢通知了,因为其他发送任务通知的任务得不到cpu使用权,所以不可能发来新的通知,除非这个最高优先级的任务进入阻塞态。
页: [1]
查看完整版本: 任务通知的问题