【问题标题】:SubscriberClient.pull - how to cancel a request?SubscriberClient.pull - 如何取消请求?
【发布时间】:2017-05-02 17:56:08
【问题描述】:

public final PullResponse pull(SubscriptionName subscription, boolean returnImmediately, int maxMessages)

根据文档:

@param returnImmediately 如果此字段设置为 true,即使在 Pull 响应中没有可返回的消息,系统也会立即响应。否则,系统可能会等待(一段时间)直到至少有一条消息可用,而不是不返回任何消息。

如果客户端不想再等待响应,它可以取消请求。

我有一个调用 pull 的线程,returnImmediately 标志设置为 false。 如果我在拉取请求超时之前中断()线程有一个(大约 60 秒)延迟,我可以检查中断标志状态。

我看不到任何将中断请求传递给调用的方法。我也看不到配置“有限时间”的方法。我错过了什么?

【问题讨论】:

    标签: google-cloud-pubsub


    【解决方案1】:

    您可能使用的是相当旧的 alpha 版 Google Cloud Pub/Sub 客户端库。在 ≥ 0.11.0 的版本(包括 latest version, 0.17.1)中,不一致性不再存在,因为 API 已更改,因此您不再需要担心 returnImmediately

    【讨论】:

    • 是的,客户端库似乎正在以惊人的速度变化。谢谢。
    • 库确实最近变化很大,但很快就会稳定下来。该团队一直在对库和 API 进行改进,以便更轻松地正确使用 Cloud Pub/Sub。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多