手把手教你学用嵌入式操作系统

  1. 主页
  2. 手把手教你学用嵌入式操作系统
  3. 第4章 任务中断间的同步与通信
  4. 利用邮箱实现数据通信

利用邮箱实现数据通信

内容纲要

前一小节介绍的使用全局数据进行通信,可以看到使用这种方法看起来比较简单,但实际并不简单。

而如果使用邮箱/消息队列,能够免去自行解决在使用全局数据进行通信的一些问题。

主要内容

在前面学习使用全局数据进行通信时,我们知道了有如下几个问题需要自行解决。

  • 全局数据共享时的保护
  • 多次写入数据时的数据缓存
  • 数据读写时的读写同步

而如果使用邮箱,以上问题都可以得到解决,不需要自行再实现,

如上图所示,

  • 邮箱内部实现了一个FIFO队列,缓存多次写入的数据
  • 在往FIFO队列中读写时,其内部采用了一保护机制
  • 内部等待队列用于解决通信时任务间的同步问题

所以,采用邮箱能更为容易地解决这些问题。

重点难点

注意事项

在最后章节 综合实例中,我们还会看到用邮箱进行通信的更为复杂的案例。

在这里,请先学习怎样使用邮箱实现任务之间的基本通信。

常见问题

这篇文章对您有用吗?

我们要如何帮助您?

发表评论

电子邮件地址不会被公开。 必填项已用*标注