【发布时间】:2017-01-23 23:26:13
【问题描述】:
这两种即发即弃的选择有什么区别:
HostingEnvironment.QueueBackgroundWorkItem(async () => await UpdateStatsAsync(id))
和
HostingEnvironment.QueueBackgroundWorkItem(() => UpdateStatsAsync(id))
当涉及到排队一些客户端并不真正需要依赖的后台工作时?
【问题讨论】:
-
@Icemanind:谢谢,这些答案并不明确,而且相互矛盾。 Stephen Cleary 在那里的回答谈到了一般的异步与同步案例:/
-
接受的答案详细而准确。 Cleary 的回答是一个奇怪的贡献。似乎并没有真正解决所提出问题的实际要素。但这并不意味着该问题与您的问题不完全相同。
-
嗯。我回答的时候你关门了。我把我的答案记录在这里,如果只是为了发泄一下。不同之处在于 - 第一个虚假地将 UpdateStatsAsync() 包装在一个额外的任务中,稍后必须再次解包。 - 第二个更容易阅读。
-
重新开放;这个问题是关于将异步工作排队到 QBWI 的两种不同方法; the other question 是关于排队异步工作与排队同步工作。
标签: c# asp.net task background-process