Python mqtt 停止发布

Python mqtt stops publishing

此简单代码在 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()