如何取消MassTransit中的consumer方法

Dav*_* S. 5 masstransit

如何取消执行 Consume 方法IConsumer<>?我尝试创建一个取消令牌并使用另一个线程来触发取消,我可以得到一个ConsumerCancelledException,但我无法处理Fault<> 消息。例如

  • 我有一个MyDataConsumer: IConsumer<MyData>MyDataFaultConsumer: IConsumer<Fault<MyData>>: IConsumer<Fault<MyData>>
  • 抛出IConsumer<MyData>一个ConsumerCancelledException
  • 失败的消息进入了队列MyData_error,但没有进入MyDataFault队列

但是,如果我直接在 my 中抛出异常MyDataConsumer,我的故障消费者就可以获取数据。ConsumerCancelledException 的处理方式似乎与其他异常不同。