- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
通常当我设置 lldb 观察点时,当它们被命中时,lldb 会说观察点命中旧值:新值。但是,我在一个似乎被写入第 3 方库 (libjpeg-turbo) 内部的地址上设置了一个观察点,而不是通常的观察点命中,我看到 EXC_BREAKPOINT code=258,subcode=0xADDRESS。
在所有情况下,我都可以看到子代码必须是地址,因为它总是等于地址或接近我设置观察点的地址。谁能证实这一点?
如果我删除观察点并继续运行,lldb 将不会因 EXC_BREAKPOINT 而暂停。但是代码是什么意思,我在哪里可以找到关于它的一些官方文档?
exc_types.h 没有给出任何详细信息。
最佳答案
对于任何对此问题感兴趣的人,都有一篇关于该主题的好文章:
Understanding iOS Exception Types
In all cases, I can see that the subcode must be the address, as it's always equal to the address or close to the one I set the watchpoint to. Can anyone confirm this?
exception_types.h
头文件中没有太多信息:
open -t /Applications/Xcode.app//Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/include/mach/exception_types.h
我可以确认我总是看到 EXC_BREAKPOINT
在子代码中有地址。
但是 header 中的其他类型表示 subcode
可以包含不同类型的信息:
#define EXC_EMULATION 4 /* Emulation instruction */
/* Emulation support instruction encountered */
/* Details in code and subcode fields */
我们不得不调查一个产生的 Swift 崩溃:EXC_BREAKPOINT
。在我们的例子中,它归结为 Swift 类型的强制转换。以下两种情况都会在 ARM 设备上导致 EXC_BREAKPOINT
:
func test_crash() {
let num = Int(DBL_MAX)
}
func test_crash_2() {
let num = Int(Double(0) / Double(0))
}
在这两种情况下,EXC_BREAKPOINT 都有一个子代码,如果您查看程序集,该子代码的地址就是 sbrk
指令的地址。
关于ios - EXC_BREAKPOINT 代码和子代码的含义是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27987321/
当我归档我的数据时,出现了一个问题,我从未遇到过: 线程信息: 0xda5434 : bl 0xc7a6f0 ; function signature sp
我设置了一个游戏,玩家在游戏中控制飞船并射击来袭的敌人。当一个子弹和一个敌人接触时,不会崩溃,但是当两个子弹击中2个不同的敌人时,我在以下函数中崩溃了。(EXC_Breakpoint) 我该如何解决?
我在 Storyboard的 View Controller 上有一个 TableView Nib ,这样我就可以执行转场。目前,我已将第一个 Nib 放在 View Controller 上,但是当
当用户单击按钮时,将调用以下函数。 func wipeScreen() { removeGestureRecognizers() scene?.children.forEach({ (
我在 Logic X 中运行的 C++ audiounit 组件中的一些用户计算机上发生了崩溃。不幸的是,我无法在本地重复它,并且在尝试弄清楚它是如何发生的过程中我得到了一些问题。 以下是故障转储中的
我是 Swift 的新手,但我是 Objective-c 方面经验丰富的 iOS 开发人员。目前,crashlytics 已向单个用户报告了 EXC_BREAKPOINT 崩溃,但这是系统性的。我已尝
通常当我设置 lldb 观察点时,当它们被命中时,lldb 会说观察点命中旧值:新值。但是,我在一个似乎被写入第 3 方库 (libjpeg-turbo) 内部的地址上设置了一个观察点,而不是通常的观
我在 Fabric 中有这个堆栈跟踪: 我的问题:根据崩溃日志,函数“formatMessageAuthorName”是否是导致此 EXC_BREAKPOINT 崩溃的唯一原因?例如,除了此函数中的代
我们在我们的应用程序上使用介绍性价格。我们有一个问题只能在我们的两个 QA 设备之一上重现,即法国 App Store 上的 iPhone 6S (11.4.1)。另一个是 iPhone 7(带有法语
这是我为 iOS 7 更新应用程序以来一直遇到的一个新问题。每次在设备或模拟器上启动应用程序时,我都会收到此错误代码 RecipeDetailViewController scrollViewDidS
我有一个多线程应用程序,它在我的所有测试机器上都非常稳定,并且对于我的几乎每一位用户来说似乎都是稳定的(基于没有崩溃投诉)。不过,对于一位好心的用户来说,该应用程序经常崩溃,他发送了崩溃报告。所有崩溃
我在工作中发生了 EXC_BREAKPOINT 异常。 Date/Time: 2011-10-20 15:19:05.089 +0400 OS Version: iPhone O
如果有人可以花时间帮助我,我将非常感激!!! 我现在面对的是 我正在开发一个用于自动填充密码的应用程序,这意味着在网站登录期间单击键盘上方QuickType托架中的小键图标时,将触发我的应用程序。 然
我有一个基本的 tableview 设置,用于加载 JSON 数据。我正在使用 Fabric 进行崩溃报告,我尝试复制崩溃,但我可以从崩溃报告中猜测场景。 override func viewDidL
我的 UITableView 标题中有一个 UICollectionView。如果没有数据,我会删除 collectionView。我在行“self.collectionView.reloadData
我的 iOS 应用程序在测试中运行良好,但在启动时崩溃,并使用从 App Store 下载的发布版本。我已经尝试使用 Xcode 中的发布构建配置重新测试并且它没有崩溃,只是商店版本。我很确定它与应用
我在设置方法中设置了一个 var tagTextField: UITextField。稍后当我调用一个方法时,我想用这个 var tagTextField: UITextField 做一些事情,即:
我今天收到了来自 Crashlytics 的崩溃报告,我无法弄清楚问题出在哪里。我的应用已经运行了几个月没有问题,所以这似乎是一次性的。 崩溃是 Exception Type EXC_BREAKPOI
我正在 OS X Yosemite 上的 Xcode 6 中开发 Swift/Obj-C franken-app。我正在尝试在运行 iOS 8 的第 5 代 iPod Touch 上运行它。 几天前我
这是我的代码(largeAsteroids.count 永远不会为 0): var largeAsteroids=[[SKTexture]]() func randomLargeAsteroidTex
我是一名优秀的程序员,十分优秀!