keepAlive'握手'是必需的,它不能被禁用,它是经纪人如何知道客户端仍然连接。
在将opts对象传递给NewClient方法之前,您可以通过调用SetKeepAlive来更改保持活动超时。
该方法以每秒keepAlive数据包之间的时间为单位,以秒为单位。
使用示例代码here,您可以添加一行这样的行,将KeepAlive超时设置为30秒。
...
opts := MQTT.NewClientOptions().SetBroker("tcp://iot.eclipse.org:1883")
opts.SetClientId("go-simple")
opts.SetTraceLevel(MQTT.Off)
opts.SetDefaultPublishHandler(f)
opts.SetKeepAlive(30)
//create and start a client using the above ClientOptions
c := MQTT.NewClient(opts)
_, err := c.Start()
if err != nil {
panic(err)
}
...