在等待IAsyncAction时我应该使用ConfigureAwait(false)吗?

时间:2015-11-02 11:27:07

标签: c# async-await task-parallel-library

建议例如here尽可能在等待的任务中使用ConfigureAwait(false)

此建议是否也扩展到返回IAsyncAction的方法,例如StreamSocket.ConnectAsync()

也就是说,而不是简单地在我的类库中写这个:

await socket.ConnectAsync(hostName, port);

我应该写这个?

await socket.ConnectAsync(hostName, port).AsTask().ConfigureAwait(false);

1 个答案:

答案 0 :(得分:5)

是。拥有任何不需要其上下文的方法是最佳做法,请使用ConfigureAwait(false)。配置适用于await(不是TaskIAsyncAction),并且应该配置await