【发布时间】:2013-05-14 09:59:22
【问题描述】:
当我尝试运行下面的代码时,执行同步操作。 为什么?
我收到以下警告...
警告 1 此异步方法缺少“等待”运算符,将同步运行。考虑使用 'await' 运算符来等待非阻塞 API 调用,或使用 'await Task.Run(...)' 在后台线程上执行 CPU 密集型工作。
private async void btProcessa_Click(object sender, EventArgs e)
{
await ProcessaA();
await ProcessaB();
}
public async Task ProcessaA()
{
for (int i = 0; i <= 100; i++)
{
pbProcessoA.Value = i;
Thread.Sleep(500);
}
}
public async Task ProcessaB()
{
for (int i = 0; i <= 100; i++)
{
pbProcessoB.Value = i;
Thread.Sleep(500);
}
}
【问题讨论】:
-
详细信息的哪一部分不明白?我们需要知道才能具体回答。
-
这个问题看起来像是Using async without await的骗子
标签: c# task-parallel-library .net-4.5 async-await