当您订阅一个独占队列(一次只允许一个消费者)时,当队列被超额订阅(已经有一个消费者)时,node-amqp 会引发异常。
- 我试过使用 .on("error",cb) 语法。
- 我尝试过错误域(节点 0.10.0)
- Try/catch 显然没有用
这是我的订阅线,但没什么特别的:
queue.subscribe({ack: true, prefetchCount: 1, exclusive: exclusive}, cbExecute).addCallback((ok) -> listeners[type] = ok.consumerTag);
使用队列时会抛出未处理的异常:
ACCESS_REFUSED - queue 'respQ' in vhost 'brkoacph' in exclusive use
查看 node-amqp 内部,我看到它们在模块内实现了一个独立的任务队列,以便在发生错误时,该任务在独立的上下文中运行。
是否有任何解决方法/修复?...或者我只是做错了什么?