首先,这个issue或许有些冒犯,我并不精通事件总线
我测试CodeWF.EventBus时,发现对于_eventBus.PublishAsync,是否使用await不影响执行效果,如果handler是一个耗时方法,那么_eventBus.PublishAsync这步无论如何都会等待handler方法执行完毕后再继续执行。
我同时也测试了MediatR,mediator.Publish在不使用await时就会继续向下执行。
从功能角度来讲,query需要拿到返回的结果,所以需要等待,但事件发布订阅似乎并不需要拿到结果(我了解不等待会导致的一些后果,诸如依赖服务被释放等),但依赖服务被释放的问题可以通过定义scope作用域解决
如果我期望事件发布与事件订阅方法的执行并不是等待的关系,那我的需要只能通过一些消息队列方案来解决吗?
或者说,能否提供一个配置变量,来决定事件发布后是否等待handler处理完成后继续