必要时从Azure Service Bus获取消息

时间:2019-01-24 05:29:50

标签: c# azure azureservicebus

是否有可能在我的应用程序中需要时检索消息?

我需要做的只是在队列中有一条消息时不声明任何接受消息的句柄(我可以使用QueueClient来实现),因为我想一次处理一条消息。成功处理了一条消息后,只有我需要队列中的另一条消息。

服务总线有可能吗?

谢谢!

2 个答案:

答案 0 :(得分:0)

服务总线具有“消息延迟”的此属性,您可以将消息延迟到完成当前消息的处理吗?

邮件延迟 当队列或订阅客户端收到一条愿意处理的消息,但由于应用程序内的特殊情况而当前无法进行处理时,该实体可以选择以后再defer retrieval of the message。该消息保留在队列或订阅中,但被保留。

答案 1 :(得分:0)

RegisterSessionHandler具有属性MessageWaitTimeout,可让您等待接收消息。

如果您确定要处理消息的时间,则可以指定此属性,该属性将给您足够的时间来处理消息。下一封邮件仅在指定的时间之后收到。

使用此方法,您可以使用RegisterSessionHandler延迟下一条消息的检索。