在我发布时使用PubNub为什么会启动连续循环? 程序应该在功能完成后结束。 但是在发送发布消息之后,发布程序继续运行,就像它正在等待其他东西一样。
这是我的代码
import java.sql.Timestamp;
import java.util.Date;
import com.pubnub.api.*;
import org.json.*;
public class UserRegister {
public static void main(String[] args) throws InterruptedException {
Pubnub pubnub_pub = new Pubnub("pub-c-3192165c-...", "sub-c-7debcf5c-...");
Callback callback = new Callback() {
public void successCallback(String channel, Object response) {
System.out.println(response.toString());
}
public void errorCallback(String channel, PubnubError error) {
System.out.println(error.toString());
}
};
String encMessage="";
JSONObject message = new JSONObject();
try {
System.out.println("user reg");
message.put("CMD", "USER_REGISTER");
message.put("EMAIL", "jabali2@jabali.in");
message.put("PASSWORD", "1123");
message.put("TIMESTAMP", new Timestamp(new Date().getTime()));
encMessage = new MyEncrypt().encrypt(message.toString());
}
catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
pubnub_pub.publish("jabali_channel_101", encMessage, callback);
}
}
一旦程序完成发布,程序是否应该停止?
它也不会陷入某个循环。我可以在PubNub控制台和我的订阅者中看到输出。此外,我可以在发布声明后写出我想要的内容,它像普通程序一样继续。
除了它永远不会自己结束的事实
任何人都可以解释发生了什么吗?
答案 0 :(得分:3)
您可以使用:
pubnub_pub.stop();
这将在发布后终止线程。