当前位置:  开发笔记 > 编程语言 > 正文

Xamarin Studio中的奇怪异常堆栈跟踪

如何解决《XamarinStudio中的奇怪异常堆栈跟踪》经验,为你挑选了1个好方法。

在此输入图像描述 获取下一个奇怪的Xamarin Studio行为:我在某些类的特定行中抛出硬编码异常.

在此输入图像描述 接下来是结果:始终在Main类中捕获异常,而不在堆栈跟踪中使用我的特定行



1> Krumelur..:

该方法OpenRelatedView()似乎是从非UI线程调用的,因为您InvokeOnMainThread()在那里使用.所以我的假设是你在Task.Run()某处使用它来调用它.所有异步代码都将隐式包装到try-catch中.

您必须捕获并处理此异常.每个Task对象都有一个Exception 属性,该属性将包含异步执行期间发生的所有异常.如果使用await正确,则会解开这些异常.您的方法具有void返回类型,因此无法等待.因此,除非事情得到解决,否则该例外将不会被发现.在某些平台上(例如Windows Phone),你永远不会注意到出了什么问题.

但是,使用Xamarin.iOS,在应用程序根级别存在所有未捕获异常的处理程序,这就是为什么你会在那里看到异常的原因.

Steven Clery有很多关于任务和异步编码的好文章.

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有