.net - 事件基本消费者 : max number of threads

标签 .net multithreading rabbitmq

在实现使用 EventingBasicConsumer 的 RabbitMQ(.NET) 消费者时,控制最大工作线程数的最简单方法是什么?

据我所知,默认情况下,有多少消息进来,就有多少线程。例如,如果消费操作打开一个数据库连接,那么最大线程数应该受到控制。

最佳答案

使用consumer prefetch limit限制您的消费者允许拥有的未确认消息的数量。

例如,如果您想将线程数限制为 1,您可以为该使用者设置预取限制为 1。

请注意,您需要处于确认模式才能正常工作,在处理完消息后,您必须显式确认消息。

关于.net - 事件基本消费者 : max number of threads,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32581338/

相关文章:

c - 使用 sigaction 时未调用信号处理程序

c# - 如何将 Parallel.ForEach 与线程局部状态一起使用?

python - 异步抓取并使用django celery和redis存储结果并存储我的正确方法是什么?

c# - 设置和使用 MenuInfo 结构的正确方法是什么?

c# - System.Drawing.Icon 构造函数抛出 "Operation completed successfully"异常

.net - SAP .Net Connector 3.0 - 如何从非 SAP 系统发送 IDoc?

java - 某些尝试在同一台机器上连接到 RabbitMQ 会导致 TimeoutException

c# - 如何在 C# 中获得最新的整小时减去一小时?

c# - 如何避免 GUI 卡住?

java - 为什么我的 RabbitMQ channel 一直关闭?