c# - Azure ServiceBusProcessor 需要很长时间才能停止

标签 c# azure-servicebus-queues

我正在尝试通过 Azure 服务总线库 Azure.Messaging.ServiceBus 发送消息。我正在关注 this tutorial并发送/处理单个消息。
调用processor.StopProcessingAsync() 时,该操作大约需要一分钟(每次)。在 Azure 门户中查看时,所有消息都已处理。我不知道为什么即使队列中没有消息,处理器也需要很长时间才能停止。
似乎每次都需要(完全)相同的时间。如果有人能指出为什么需要这么长时间以及如何减少它(配置/设置?),我会非常感激。提前致谢!

最佳答案

好的。在查看源代码时,我发现接收器启动后有一个默认的“等待时间”,即 60 秒。这可以通过设置 TryTimeout 来降低在 ServiceBusClientOptions.ServiceBusRetryOptions 上。
看:
ServiceBusRetryOptions
AmqpReceiver.ReceiveMessagesAsyncInternal

关于c# - Azure ServiceBusProcessor 需要很长时间才能停止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65273888/

相关文章:

基于服务总线触发消息内容的 Azure Functions 动态输入/输出绑定(bind)

c# - Visual C# 中的全局变量

c# - 如何使用 C# 在 MS Excel 单元格中添加数字验证

c# - 为什么这对于父类(super class)的扩展方法是必需的?

相当于 RabbitMQ QoS 的 Azure 服务总线

java - 从服务总线队列读取死信消息

azure - 消息为何是死字的确切异常信息

c# - 使用声明身份验证用户进入系统

c# - 使用 OpenXml 更改 Excel 工作表中的特定单元格背景颜色

azure - 如何在 ARM 模板中设置服务总线逻辑应用程序操作的连接字符串?