C# 客户端如何知道MSMQ MaximumQueueSize配额已达到?

C# 客户端如何知道MSMQ MaximumQueueSize配额已达到?,c#,.net,msmq,C#,.net,Msmq,我注意到,即使在消息队列配额达到之后,“Send”方法也不会向客户端发出任何信号 _messagequeue.MaximumQueueSize=5; _messagequeue.Send(message) 在上面的例子中,我期望_messagequeue.Send(message);一旦达到队列配额,就抛出“资源不足异常”或其他信号。但是,“Send”方法将在没有任何错误的情况下执行,但消息不会进入队列。。那么客户端如何知道何时停止推送消息呢?我记得您需要在MSMQ中使用事务,以确保消息到达目的

我注意到,即使在消息队列配额达到之后,“Send”方法也不会向客户端发出任何信号

_messagequeue.MaximumQueueSize=5; _messagequeue.Send(message)


在上面的例子中,我期望_messagequeue.Send(message);一旦达到队列配额,就抛出“资源不足异常”或其他信号。但是,“Send”方法将在没有任何错误的情况下执行,但消息不会进入队列。。那么客户端如何知道何时停止推送消息呢?

我记得您需要在MSMQ中使用事务,以确保消息到达目的地。

请参阅: …您可以从要向其发送消息的计算机请求NACK(否定确认)。如果此确认返回给您的应用程序,并指示已达到此队列或计算机的配额,则您的应用程序可以停止发送消息或将消息卸载到另一个目标

以及有关使用该工具的更多信息:

你好,Ingo非常感谢你的帮助。。我检查了所有的确认码,但没有一个能帮到我。。我的要求很简单,当队列达到一定限制时,我想停止我的馈线?任何样品都将不胜感激。。