【问题标题】:Use ConfigureAwait(false) in a Windows Service?在 Windows 服务中使用 ConfigureAwait(false)?
【发布时间】:2014-06-24 02:56:26
【问题描述】:

据我所知,Windows 服务应用程序中没有同步上下文。

  • await fooTask.ConfigureAwait(false) 是否能给我带来 Windows 服务的任何好处?
  • 这有什么陷阱吗?

【问题讨论】:

  • 没有陷阱,只要没有安装同步上下文的代码。只要此代码在没有同步上下文的线程上运行,也没有任何好处。对于共享类库来说,它仍然有意义。
  • @Noseratio 为什么不将其发布为答案?
  • @svick,我现在发布了。

标签: c# windows-services task-parallel-library async-await synchronizationcontext


【解决方案1】:

等待fooTask.ConfigureAwait(false) 是否给我任何好处 Windows 服务?这有什么陷阱吗?

只要没有安装同步上下文的代码,就没有陷阱。只要此代码在没有同步上下文的线程上运行,也没有任何好处。

尽管如此,此代码对于共享类库仍然有意义,旨在用于不同的执行环境。

如果你有同步上下文,might be some pitfalls

更新:现在是 2021 年,这就是我对 using ConfigureAwait these days 的看法。

【讨论】:

    猜你喜欢
    • 2019-11-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-09-11
    • 2023-03-18
    • 1970-01-01
    相关资源
    最近更新 更多