捕获来自ActiveMQ的断开连接事件



使用1.6版本的NMS(1.6.3 activemq)我正在设置一个侦听器来等待消息。侦听器有自己的线程(而不是我的),我的代码超出了范围(直到调用侦听器的函数为止)。

如果ActiveMQ服务器断开连接,我将得到一个只能全局捕获的全局异常。(创建监听器的线程不会捕获它。我没有什么可以用"try"one_answers"catch"包装的)。

有没有一种方法可以设置像-OnError+=ErrorHandlingFunction()这样的回调函数,因为我使用侦听器以本地方式而不是全局异常捕获器来处理这个问题?有没有更好的方法来处理这个问题(我不能使用传输失败,因为我没有任何其他选择,但要等待一段时间,然后断开连接,也许会记录一些内容或发送服务器脱机的消息)。

客户端中没有挂接异步消息侦听器的机制,以查明连接是否在处理消息期间断开。你真的应该好好想想为什么你认为你需要这样的东西。

您在异步回调中使用的NMS API方法在未连接时将抛出异常,因此,如果您在异步消息事件处理程序中尝试确认消息,那么如果连接断开,它将抛出异常。

最新更新