C# 如何在导航事件中使用异步
我想知道两者之间的区别C# 如何在导航事件中使用异步,c#,asynchronous,windows-phone-8,C#,Asynchronous,Windows Phone 8,我想知道两者之间的区别 protected async override void OnNavigatedTo(NavigationEventArgs e) 及 在导航方法中使用异步的目的是什么?是否有优势?在什么样的条件下,这样做是最佳的?我以前从未在导航事件中使用过async,但我引用的一个新教程是。不同之处在于,当您将该方法标记为async时,您可以在其中进行异步调用,这不会阻止UI线程。例如:在on navigatedto方法中,可以异步加载一些数据。 正如@Soner Gönül在评
protected async override void OnNavigatedTo(NavigationEventArgs e)
及
在导航方法中使用异步的目的是什么?是否有优势?在什么样的条件下,这样做是最佳的?我以前从未在导航事件中使用过async,但我引用的一个新教程是。不同之处在于,当您将该方法标记为async时,您可以在其中进行异步调用,这不会阻止UI线程。例如:在on navigatedto方法中,可以异步加载一些数据。
正如@Soner Gönül在评论中提到的那样,您应该先查阅您是否阅读了文档?好的,我理解。示例
OnNavigateTo
事件实际上正在使用wait InitializeCamera(_sensorLocation)代码>。也是一个很好的参考资料。好的,谢谢。我知道,对于可能需要时间或阻塞UI的任务,我应该使用异步方法,但我也看到在不同页面的基本导航中使用了异步方法。我的主要问题是,在决定是否使用异步时,我通常应该寻找什么。@Matthew Well根据MS的说法,任何超过20ms(或者是50…)的时间都应该是异步的。因此,如果您的操作比导航中的操作花费的时间更长,那么它应该是异步的。大多数人使用异步的另一个原因是UI线程应该只做UI工作,其他任何工作都应该在一个单独的线程中(异步方法)。
protected override void OnNavigatedTo(NavigationEventArgs e)