我使用 C# 已经有一段时间了,但不知何故还没有享受到使用await/async
.Net 4 中的全部新功能的乐趣。好吧,现在我正在制作一个链接到 WinRT 库的控制台应用程序,而 WinRT 真的..好吧,异步的。
我现在需要做的一件事是安装一个包。所以,我使用PackageManager.AddPackageAsync
This is course is asynchonous 并返回一个IAsyncOperationWithProgress
我知道我可以做类似的事情
bool Done=false;
void Foo()
{
var tmp=new PackageManager.AddPackageAsync(...);
tmp.Completed= ... FooBar;
while(!Done){}
}
void FooBar(...)
{
Done=true;
}
但我很确定整个 async 和 await 东西就是为这种情况而设计的。但是,我不明白如何在这种情况下使用它IAsyncOperationWithProgress