PubNub停止发布

时间:2015-11-24 11:11:06

标签: sockets publish publish-subscribe pubnub

在我发布时使用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控制台和我的订阅者中看到输出。此外,我可以在发布声明后写出我想要的内容,它像普通程序一样继续。
除了它永远不会自己结束的事实 任何人都可以解释发生了什么吗?

1 个答案:

答案 0 :(得分:3)

您可以使用:

pubnub_pub.stop();

这将在发布后终止线程。