【问题标题】:PubNub stop publishingPubNub 停止发布
【发布时间】:2015-11-24 11:11:05
【问题描述】:

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

【问题讨论】:

  • 我可以理解订阅在无限循环中运行。它需要继续收听频道。但是一旦发布完成,让它运行就没有意义了。有什么办法可以阻止它?
  • 您可以启用日志记录(使用调试 jar),捕获此行为并发送到 support@pubnub.com 吗?并且您不应该向公众公开您的 pub 密钥或子密钥。

标签: sockets publish publish-subscribe pubnub


【解决方案1】:

你可以使用:

pubnub_pub.stop();

这将在发布后终止线程本身。

【讨论】:

  • 只是很好的答案@iaL ...这对我有帮助...!!谢谢..!!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多