【发布时间】:2020-09-18 17:16:06
【问题描述】:
我不知道是否有人可以帮助我更好地理解这一点。
我正在编写一个实现IActionResult 的类。这要求我的类实现以下方法。
Task ExecuteResultAsync(ActionContext context);
在我的例子中,这个方法的实现需要写XML,使用XmlWriter到context.HttpContext.Response.Body。
问题是我认为我不需要在这里异步运行。 (我不知道context.HttpContext.Response.Body是否只是一个内存流。如果是这样,我肯定没有理由异步运行。)
所以我的选择是:
-
使用 XML 方法的异步版本。
-
这似乎没有必要,而且实际上可能会损害所有不需要的
awaits 的性能。 -
由于某种原因,异步方法具有完全不同的参数,我什至不确定它们是什么。
-
-
使用
Task.RunSynchronously()之类的东西。-
这对性能有影响吗?
-
我需要对任何异常进行特殊处理吗?
-
【问题讨论】:
-
感谢您的编辑(由于某种原因,我似乎无法在答案下找到您的答案),但请查看this issue,尤其是从this comment 向下阅读。
标签: c# .net asp.net-core .net-core