www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

  最近在使用Paho的MQTT客户端,由于英语看着有点慢,因此将其翻译为中文,与大家共享。由于英语水平有限,如有翻译不对之处,请帮忙指出。

MQTT客户端C语言库

  MQTT客户端的C语言库.© Copyright IBM Corp. 2009, 2017.
  这些页面描述了早期的通常被认为更容易使用同步API.(同步API)一些调用将会阻塞。对于新的完全异步的无阻塞API,尤其适合在视窗化的环境中使用(可参见MQTT C Client Asynchronous API Documentation)。 MQTTClient API不是线程安全的,而MQTTAsync API是线程安全的。
  MQTT客户端程序连接到具有MQTT功能的服务器。典型的客户端负责从遥测设备收集信息并将信息发布到服务器。它还可以订阅主题, 接收消息, 并使用这些信息来控制遥测设备。
  MQTT客户实现了已发布的MQTT v3协议。您可以使用您选择的编程语言和平台编写自己的MQTT协议API。这可能会很费时且容易出错。使用此库只需要很少的代码就可以写出功能齐全的mqtt客户端应用程序。这里提供的信息记录了MQTT客户端C语言库提供的API。

使用客户端

使用客户端库的应用程序通常使用类似的结构:
  1.创建一个客户端对象;
  2.设置连接MQTT服务器的选项;
  3.如果多线程(异步模式)操作被使用则设置回调函数(详见 Asynchronous vs synchronous client applications);
  4.订阅客户端需要接收的任意话题;
  5.重复以下操作直到结束:
    a.发布客户端需要的任意信息;
    b.处理所有接收到的信息;
  6.断开客户端连接;
  7.释放客户端使用的所有内存。

  下面展示了一些简单的示例:

posted on 2021-11-04 16:44  秦瑞It行程实录  阅读(89)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui