python-3.x - Python mqtt 停止发布
问题描述
这个简单的代码在 20/30 条消息后停止发布到代理。print(frame) 语句继续有效,但没有发布关于该主题的框架:
client = mqtt.Client("myMonitor")
client.connect(broker)
try:
while 1:
# Read data from BUS
frame = RecData(smon)
if frame.count("##") >= 1:
print(frame)
client.publish("salty/monitor",frame)
except KeyboardInterrupt:
print("KeyB Interrupt")
ExitApp()
我哪里错了?
解决方案
您还没有启动客户端循环,因此任何大于单个 TCP 数据包的消息都会锁定客户端。
您需要client.loop_start()
在循环之前添加
推荐阅读
- javascript - 使用 localStorage 中的变量反应组件
- sql - 如何在 SELECT 区域中编写方程式
- machine-learning - ERROR:root:Error processing image while training Mask-RCNN
- php - 使用 cURL PHP 从页面获取所有 cookie
- react-native - 创建了一个自定义按钮组件,但我无法让它显示为禁用
- php - 将具有内部类的类的实例存储到 mySQL 数据库中
- google-cloud-pubsub - Google Classroom Pub/Sub 注册返回 403 身份验证错误
- node.js - 如何在生产服务器上部署 React Frontend + Node Backend?
- visual-studio-code - 从 Visual Studio Code 生成 apk
- c# - 需要在我的 c# web api 中修复错误的加密方法