如何使用Apache.NMS API以编程方式清除ActiveMQ队列?

我需要能够使用Apache.NMS(C#)以编程方式清除队列。我一直在查看NMS API,但看不到这样的功能。它存在吗?     
已邀请:
没有直接的方法从NMS API刷新队列,这更像是一个管理功能。您可以将IConnection实例强制转换为Apahce.NMS.ActiveMQ.Connection,然后调用DeleteDestination。如果队列中没有消费者但是如果存在则会抛出异常,这将起作用。     
通过“刷新”队列(删除所有消息?)不完全确定你的意思,但你可以通过设置会话事务来管理消息:
ISession consumerSession = = connection.CreateSession(AcknowledgementMode.Transactional);
然后你可以使用:
//will remove message from queue on success
consumerSession.Commit();
要么:
//on failure, back on queue
consumerSession.Rollback();
    

要回复问题请先登录注册