我开始异步/等待使用。我已经使用基于MVVM模式的WPF编写了简单的应用程序,但它并不像我预期的那样工作。该程序的工作原理是没有异步函数:在执行execute函数后,只有在循环函数结束后才冻结和解冻。等待/异步无法正常工作
请告诉我我错了什么。我会很感激任何反馈。 :)
这是我的modelview类。它继承自wpf类,它包含标准wpf函数的定义,如OnPropertyChanged。
public class ModelView : wpf
{
string _state;
public string state { get { return _state; } set { _state = value; OnPropertyChanged("state"); } }
public DelegateCommand work { get; set; }
public ModelView()
{
state = "Program started";
work=new DelegateCommand(_work);
}
async void _work(object parameter)
{
state = "Working...";
int j=await loop();
state = "Done: " + j;
}
async Task<int> loop()
{
int i;
for(i=0;i<1000000000;i++);
return i;
}
}
你几乎肯定会得到一个编译器警告,因为*告诉你*问题是什么。 – 2014-09-03 11:47:46
http:// stackoverflow。com/a/25078752/2530848 – 2014-09-03 11:52:28