使用 gcloud-java pubsub API 0.2.6 - 如何在订阅拉取时将“立即返回”标志设置为 TRUE?
问问题
585 次
2 回答
2
“立即返回”标志在 gcloud-java pubsub API 中默认设置为 true 以进行拉取调用。尽管该特定库处于 alpha 阶段,但目前无法设置标志,因此可能会发生变化。
于 2016-07-28T14:36:33.333 回答
0
(警告:我是gcloud-java
团队的一员)
gcloud-java
提供三种拉取消息的方式:
Future<Iterator<ReceivedMessage>> pullAsync(String subscription, int maxMessages);
Iterator<ReceivedMessage> pull(String subscription, int maxMessages);
MessageConsumer pullAsync(String subscription, MessageProcessor callback, PullOption... options);
默认情况下,前两种方法确实将“立即返回”标志设置为 true。
相反,代表用户处理持续拉取的最后一个方法总是将“立即返回”标志设置为 false。一个使用示例可能如下
MessageProcessor messageProcessor = new MessageProcessor() {
@Override
public void process(Message message) throws Exception {
// handle message
}
};
MessageConsumer consumer = pubsub.pullAsync(subscription, messageProcessor);
// close the consumer to stop pulling
consumer.close();
于 2016-08-22T17:54:39.490 回答