Ngh*_*yen 2 c# httpwebrequest async-await windows-phone-8
var factory1 = new TaskFactory();
var task1 = factory1.FromAsync<WebResponse>(request.BeginGetResponse, request.EndGetResponse, null).Result;
Run Code Online (Sandbox Code Playgroud)
上面的代码适用于Windows 8和Windows应用商店,但是当我尝试在Windows Phone 8中运行它时,它不起作用.它只是冻结并且没有响应任何东西,看起来它需要永远运行任务.
我的目的是在不使用asycn和await方法的情况下调用Web服务同步.
这应该发生.当您请求Result时,应用程序将停止并等待您实际获得结果.这意味着你要同步等待.
如果要异步等待,则必须使用await关键字,因为它的语义是:获得结果时,继续执行; 同时,继续进行UI工作.
这是wait(隐含同步)和异步等待(aka await)之间的区别.
| 归档时间: |
|
| 查看次数: |
3877 次 |
| 最近记录: |