我正在查看async
- await
的说明
async Task<int> IndexWordsFromAsync(string url)
{
string content = await httpClient.GetStringAsync(url);
int wordCount = AddContentToIndex(content);
return wordCount;
}
int AddContentToIndex(string content)
{
...
}
相当于
Task<int> task = IndexWordsFromAsync(url);
var currentContext = SynchronizationContext.Current;
task.ContinueWith(delegate
{
if(currentContext == null)
RestOfMethod();
else
currentContext.Post(delegate { RegstOfMethod(); }, null);
}, TaskScheduler.Current);
有人可以确认这是真的吗?或者,您可以将我链接到互联网上以async
- await
这样描述的地方吗?
答案 0 :(得分:3)
有人可以确认这是真的吗?
你有理由怀疑吗?没有说你在哪里找到这个解释就很难批评它。
有很多很多细节错了,但基本的想法是合理的。 Async-await是构造由具有continuation的任务组成的异步工作流的语法糖。
或者,您可以将我链接到互联网上描述异步的地方 - 等待这种方式吗?
这不是推荐文章的网站;你可以进行自己的网络搜索。
如果你想要我关于这个主题的文章,很容易找到它们:
https://blogs.msdn.microsoft.com/ericlippert/tag/async/
这些是从最近到最近的顺序,所以如果你想从头开始,请转到第二页的底部。
您也可以考虑阅读Jon Skeet,Stephen Cleary,Mads Torgersen和Stephen Toub撰写的文章,这些文章也很容易找到。