本文是MQTT 嵌入式 C语言 客户端libemqtt源码解析
源码目录结构:
├── client:客户端应用代码(订阅与发布)
├── include:头文件包含
└── src:emqtt实现源码
└── python
注意:里面有python实现代码,本文直接跳过,全部讲解C代码。
需要具备的一点概念:
提出的待解决问题:
客户端规定在最大时间发送报文的时间间隔内,再次发送一份pingreq给服务器,否则将自动断开连接。在arm上可以使用signal信号处理函数,在单片机上可以使用定时器,间隔合理时间地发送pingreq报文就可保持双方连接状态。
libemqtt源码(C语言客户端)使用[I/O多路转换]来实现