【发布时间】:2016-09-24 06:13:05
【问题描述】:
我熟悉使用 Device.BeginInvokeOnMainThread 在 UI 线程上更新 UI 元素的规则,但是我有一个操作需要在实际上是一个任务的 UI 线程上运行。
例如,XLabs.Forms.Mvvm 上的 Push/PopAsync 方法在 iOS 上的行为似乎不正确,除非在 UI 线程上调用它们。 Acr.UserDialogs 库中还有另一个示例,用于显示 toast 等。
我知道,使 Action 异步基本上是创建一个异步 void lambda,并且在发生异常的情况下冒着创建死锁的风险,显然我不希望这种情况发生。
是否有人有解决方法来在 UI 线程上执行不涉及将操作标记为异步的异步操作?
【问题讨论】:
标签: c# xamarin async-await xamarin.forms