在一个使用C#/XAML的Windows 8应用程序中,有时我想从非异步方法调用可等待方法。
实际上,正确的是将其替换为:
实际上,正确的是将其替换为:
public async Task<string> MyCallingMethod()
{
string result = await myMethodAsync();
return result;
}
通过这个:
public string MyCallingMethod()
{
Task.Run(async () => {
string result = await myMethodAsync();
return result;
});
}
对我来说的优点是,我可以在不使用await的情况下使用MyCallingMethod,但这是否正确呢? 如果我想要传递一个ref参数给MyCallingMethod,那么这可能是一个优点,因为在异步方法中不可能有ref参数。