【发布时间】:2014-11-12 23:21:17
【问题描述】:
我有一个名为 DoSomething() 的方法,它返回一个 object 并且非常耗时。所以我想使用 async/await 让它在后台运行,而我的 GUI 显示“等待响应...”消息。
在我的调用方法中:
Task taskDoSomething = new Task(DoSomethingAsync);
taskDoSomething.Start();
taskDoSomething.Wait();
// continue the program
我的DoSomethingAsync 方法:
private async void DoSomethingAsync()
{
Object result = await DoSomething();
}
但我得到了错误:
无法等待 [ObjectType]
[ObjectType] 是我自己创建的一种对象。我只是使用上面的对象,以免混淆读者。
请让我知道我做错了什么,让我摆脱BackgroundWorker的零散处理。
【问题讨论】:
标签: c# winforms asynchronous async-await