【发布时间】:2015-05-17 09:53:50
【问题描述】:
我已经使用异步方法很长时间了,但是我不知道编写自己的异步方法的正确方法。据我所知,第一个根(我的意思是最深的)异步方法从包装在任务中的同步方法开始?我对吗?编写此类方法的正确模式是什么?现在我这样做:
private async Task DoSomethingAsync()
{
var tsk = new Task(OnDo);
tsk.Start();
await tsk.ConfigureAwait(false);
}
private void OnDo()
{
// Do stuff ...
}
【问题讨论】:
-
如果'root'方法是同步的,它就是同步的。不要通过在另一个线程上运行来伪造异步。详情请见this blog post
-
一个好的答案是页面长。我认为您需要阅读一些基础教程。
-
@CharlesMager,很棒的文章,解释了很多。谢谢。
-
也许我的回答here 能有所启发。
标签: c# asynchronous methods async-await task-parallel-library