当我尝试使用以下代码连接到mosquitto
代理时,如您所知,连接到代理可能需要几秒钟/分钟,并且在按下按钮进行连接的那段时间内,它仍然按下直到建立连接,当连接建立时,按钮释放回正常状态。据我所知,使用paho java API
,blocking method
和unblocking method
连接客户端有两种方法。我的问题是,如何使用unblocking method
? beow是我尝试使用阻止方法
Code_1 :
//mqttFactory
public final class MQTTClientFactory {
public static MqttClient newClient(String ip, int port, String clientID) throws MqttException {
String serverURI = formURI(ip, port);
MqttClient client = new MqttClient(serverURI, clientID).;
return client;
}
MqttConnectOptions opts = getClientOptions();
client = MQTTClientFactory.newClient(broker, port, clientID);
if (client != null) {
System.out.println("Client is not Null");
client.setCallback(AsynchCallBack);
if (opts != null) {
client.connectWithResult(opts).setActionCallback(synchCallBack);
if (client.isConnected()) {
System.out.println("Client CONNECTED.");
}
}
}
答案 0 :(得分:0)
有mqtt的异步版本。代码样本。如果要进行同步非阻塞。你可以在另一个线程中启动它。