我有一些我需要运行的方法,其中一个应该作为一个不同的线程运行,所以我使用带有lambda的Task.Run,虽然我希望下一个方法在任务完成后启动。
例如,我希望LastJob()
在MoreWork()
完成后启动:
public void DoSomeWork()
{
Task.Run(() => MoreWork());
LastJob();
}
答案 0 :(得分:1)
您可以使用async
和await
关键字
link
public async void DoSomeWork()
{
await Task.Run(() => MoreWork());
LastJob();
}
答案 1 :(得分:0)
Coy可以使用ContinueWith
方法,如下所示:
public void DoSomeWork()
{
var task = Task.Run(() => MoreWork());
task.ContinueWith(() => LastJob()) ;
}