等待Task.FromResult

时间:2018-02-21 00:45:33

标签: c# asp.net asynchronous async-await

我正在尝试创建一个接口,该接口的方法可能是也可能不是异步的。也就是说,我不知道返回类型是Task<T>还是T

我提出的一个解决方案是将返回类型设置为Task<T>并始终等待它 - 即使它是同步的(我不能改变在运行时调用方法的方式)。这意味着将Task.FromResult用于同步代码并且必须等待它。

问题是,在我的情况下,极端性能很重要 - 而且我已经读过,与正常调用(无任务或等待)相比,这对于同步方法来说速度较慢。

您是否知道可以在没有性能损失的情况下实现相同结果的替代方法或模式?

0 个答案:

没有答案