多线程消息队列机制,及上下位机socket通讯机制架构浅析

转载:https://zhuanlan.zhihu.com/p/59436008

 

多线程消息队列机制,及上下位机socket通讯机制架构浅析

场景:下位机运行linux系统作为服务器,上位机运行linux系统作为客户端进行UI交互。

1下位机

  1. 下位机消息队列轮询线程:轮询队列中的消息,以此监控其余各个线程发来的消息。
  2. 下位机中socket接收线程:接收上位机数据的接收线程,如果上位机要求应答,则将应答消息,发送到消息队列;
  3. 下位机其余线程:产生各自的消息,放到消息队列中。

2.上位机

  • 上位机消息发送线程:从上位机指令缓冲区取出消息,发送消息到下位机;
  • 上位机消息接收线程:接收来自下位机的消息,存储到接收消息缓冲区中
  • UI线程:send 不同的指令到指令缓冲区;轮询来自客户端的消息缓冲区,处理客户端消息。