<分区>
有时你有一个组件,例如HttpClient
,仅提供异步方法。
当您可以“一直向上”到异步事件处理程序或异步操作方法时,这很好,因为根据我的理解,执行返回到 IIS 管道,例如,可以继续运行其他东西。
当您无法“一路向上”时,您必须在某个时候执行类似 .Result
的操作。
我的案例是托管 WCF 服务的 Windows 服务,该服务使用 HttpClient
从 API 获取一些数据。我的代码位于一个由接口(interface)绑定(bind)的方法中,该方法无法更改并且更改没有意义,因为应用程序已经直接管理线程而无需任务。
在那种情况下,最好是尽可能地“一直向上”并最终阻止或直接阻止异步方法并节省保存和恢复(等待)的复杂性和资源一直到似乎没有理由的顶部?