Skip to content

对于_eventBus.PublishAsync,是否使用await不影响执行效果 #1

@zhangboyanzhangboyan

Description

@zhangboyanzhangboyan

首先,这个issue或许有些冒犯,我并不精通事件总线

我测试CodeWF.EventBus时,发现对于_eventBus.PublishAsync,是否使用await不影响执行效果,如果handler是一个耗时方法,那么_eventBus.PublishAsync这步无论如何都会等待handler方法执行完毕后再继续执行。

我同时也测试了MediatR,mediator.Publish在不使用await时就会继续向下执行。

从功能角度来讲,query需要拿到返回的结果,所以需要等待,但事件发布订阅似乎并不需要拿到结果(我了解不等待会导致的一些后果,诸如依赖服务被释放等),但依赖服务被释放的问题可以通过定义scope作用域解决

如果我期望事件发布与事件订阅方法的执行并不是等待的关系,那我的需要只能通过一些消息队列方案来解决吗?

或者说,能否提供一个配置变量,来决定事件发布后是否等待handler处理完成后继续

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions