gpt4 book ai didi

ios - SIGSEGV 和 SIGBUS 使用 Xamarin.iOS 统一 API 崩溃

转载 作者:行者123 更新时间:2023-12-02 03:30:29 25 4
gpt4 key购买 nike

我们有一个关于经典 API 的项目。 32 位和 64 位 iOS 设备一切正常。

然后我们迁移到统一 API。该应用程序在某些设备(主要是 64 位设备)上开始崩溃。它会在许多不同的地点和情况下崩溃。这些崩溃很难预测和重现。但很多生产版本的用户都面临着这种崩溃。

目前,我们有一个正在生产的应用版本(我们称之为版本 1),它是使用适用于 iOS SDK 8.1 的 Xamarin.iOS 8.6(稳定 channel )构建的。

我们通过 Crittercism(崩溃报告服务)收集了很多类似的崩溃。所有崩溃都是SIGSEGV(原因:SEGV_MAPERR),但可能有不同的堆栈跟踪。看起来某些崩溃仅发生在 64 位设备上。

然后我们构建了该应用的另一个版本来重现该问题(版本 2)。它是使用适用于 iOS SDK 8.2 的 Xamarin.iOS 8.8(稳定 channel )构建的,并打开了调试选项。

现在我们也遇到了类似的崩溃。其中大多数发生在后台线程(而不是主 UI 线程)上。现在所有崩溃都是SIGBUS(原因:BUS_ADRERR)

此类崩溃的根本原因是什么?如何诊断和修复?

最佳答案

迁移到统一 API 后,我遇到了类似的问题,对我来说,问题是在后台线程中处理一些视觉对象。

这在经典 API 中运行良好,但在升级后开始崩溃。

因此,请确保您在 UI 线程上处置对象,或者在不必要的情况下避免处置。这可能就是收集对象时后台线程发生崩溃的原因。

希望这有帮助

关于ios - SIGSEGV 和 SIGBUS 使用 Xamarin.iOS 统一 API 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29098084/

25 4 0
文章推荐: kivy - 清除小部件 kivy
文章推荐: rand() 的 gcc 实现
文章推荐: Arduino 到 arduino i2c 代码
文章推荐: matlab - 超几何函数
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com