在 xcode 中使用调试器 Commend 跳转断点

2023-12-27

我在 Xcode 中使用跳转命令设置了一个断点来强制传递某些条件,但是当它执行到第 168 行时,它崩溃并显示消息

"Thread 1: EXC_BAD_ACCESS (code=1, address=0x1)"

为什么会发生这种事?

控制台记录:

警告: MoreMultitypeCollectionViewCell.swift:178 在此函数中出现多次,选择第一个位置:

MoreMultitypeCollectionViewCell.(updateButtonStateCkeck in _9A12557DCAB30EEB52DC7C2EA09487CD)() -> () + 1580 at MoreMultitypeCollectionViewCell.swift:178

MoreMultitypeCollectionViewCell.(updateButtonStateCkeck in _9A12557DCAB30EEB52DC7C2EA09487CD)() -> () + 1600 at MoreMultitypeCollectionViewCell.swift:178

我的问题是:

  1. 我应该如何输入 lldb 来选择位置?
  2. 有没有更好的方法强制传递到 If 语句而不更改代码并重建项目?
  3. 有时,当我在 lldb 中输入“po”或在变量视图中单击“打印描述”时,它会显示失败消息,这是怎么回事?

1)在lldb中,等效命令是thread jump您可以在那里指定地址和行号。

2) thread jump或 Xcode 等效项本质上是危险的操作。如果您跳过某些变量的初始化,您现在将处理错误的数据,并且可能会崩溃。有时你可以通过眼睛发现这种情况 - 尽管 Swift 在初始化方面很懒,所以变量的实际初始化可能不会发生在你认为在源代码中发生的地方。还有更微妙的问题。例如,如果您跳过一些作为其操作副产品保留或释放对象的代码,则该对象最终将低于或超过保留。前者会导致崩溃,后者会导致内存泄漏。这些保留和释放是由编译器生成的,因此您无法在源代码中看到它们,但如果您查看要跳过的代码的反汇编,则可以看到它们。

如果不查看相关代码,我无法判断为什么这个特定的跳转会导致崩溃。

但是您无法 100% 安全地跳过编译器选择发出的某些代码。查看反汇编,您可能能够发现(a)在跳转之前有一个更好的停止位置 - 即停止经过一些导致问题的保留或释放,或者跳转到行中间的地址,这样您仍然可以调用需要保留。你必须手动解决这个问题。

3)没有足够的信息来回答这个问题。

顺便说一句,您的图像链接似乎无法解析。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 xcode 中使用调试器 Commend 跳转断点 的相关文章

  • 为 Swift 对象/属性设置观察者

    我一直在寻找一种在连接到 Mac 的显示器数量发生变化时触发方法的方法 我知道我可以获得 NSScreen screens count 的值 但我需要找到一种方法来在该值发生变化时创建通知或其他内容 或者指示所连接的显示器数量发生变化的其他
  • 调用 SwiftUI 中位置 #11、#12 处的额外参数 [重复]

    这个问题在这里已经有答案了 我在 SwiftUI 中的切换开关上不断收到 调用中位置 11 12 处有额外参数 错误 我见过其他人有 调用中的额外参数 错误 但答案似乎没有帮助 另外 我的错误是 位置 11 12 我还没有看到其他人发生这种
  • 不明白 Swift 中的闭包示例

    我正在尝试了解 swift 和闭包 我被这个例子困住了 numbers map number Int gt Int in let result 3 number return result 什么是 number Int gt Int 它是一
  • Swift 中的柯里函数

    我想创建一个返回柯里函数的函数 如下所示 func addTwoNumbers a Int b Int gt Int return a b addTwoNumbers 4 b 6 Result 10 var add4 addTwoNumbe
  • AWS S3 公共对象与私有对象?

    回到 S3 我的存储桶中有图像的 URL 我将在我的应用程序中呈现这些图像 但它们被设置为私有 当我尝试单击该链接时 它显示 访问被拒绝 当我将链接的设置更改为公共时 它会通过 但是我读到公共访问并不是最安全的事情 所以这本质上是一个由两部
  • SwiftUI:状态栏颜色

    有没有办法将 SwiftUI 视图的状态栏更改为白色 我可能错过了一些简单的东西 但我似乎找不到在 SwiftUI 中将状态栏更改为白色的方法 到目前为止我只看到 statusBar hidden Bool 状态栏文本 色调 前景色可以通过
  • 如何防止Apple Watch进入睡眠状态?

    我们正在开发一个 Apple Watch 项目 但如果不被打扰 手表就会进入睡眠状态 有什么办法可以阻止它进入睡眠状态吗 据我所知和有关该主题的其他搜索 目前还没有api可通过编程方式启用或禁用 Apple Watch 的睡眠模式
  • 为什么这个谓词格式会变成 '= nil'

    有人建议这个线程 https stackoverflow com questions 40686005 nspredicate crash after swift 3 migration与我的问题完全相同 但是 我的应用程序没有崩溃 并且我
  • 关于窗口层次结构的警告

    我的调试器中出现这样的警告 这是什么意思 Warning Attempt to present
  • Xcode 中的 iOS 9 警告 - 此文件设置为针对早于项目部署的版本进行构建。功能可能有限

    我刚刚将我的 Mac 更新到最新的操作系统 并将 Xcode 更新到最新版本 现在我收到此警告 但我不知道该由谁来删除它 也不知道它的真正含义是什么 有人可以向我解释一下吗 Thanks Select Main storyboard in
  • 我的游戏中应该有多少个视图控制器?

    我开始使用 spritekit 构建我的第一个游戏 现在我只有一个视图控制器来呈现开始屏幕场景 override func viewDidLoad super viewDidLoad let scene StartScreenScene C
  • 超类与类SpecificationPolicy不匹配

    我得到了一个superclass mismatch for class SpecificationPolicy尝试安装或升级某些brew 软件包时出错 例如 更新安装 supabase CLI 时 brew install supabase
  • 为什么我的视图仍然以横向呈现?

    我的视图是由导航控制器控制的 因此我将导航控制器支持的方向设置为明确的纵向和纵向UpSideDown 这可以工作 但是如果调用视图时前一个视图处于横向状态 它将以横向方式呈现并保持横向状态 直到设备旋转 如何防止这种情况发生 这是我的代码
  • IPV6 快速可达性

    我是 swift 和 xcode 的新手 并且我的应用程序因 IPV6 而被拒绝 性能 2 1 当我们执行以下操作时 您的应用程序会在运行 iOS 9 3 5 并连接到 IPv6 网络的 iPad 和 iPhone 上崩溃 具体来说 当我们
  • 在视图控制器之间传递数据使用从嵌入导航控制器的视图到 tabbarcontroller 的 Segue

    我有两个视图 我想将数据从一个视图传递到下一个视图 第一个视图是我想要传递给下一个视图的数据的地方 我们称之为SourceViewController 然而SourceViewController嵌入在一个NavigationViewCon
  • 如何测试 UITextField 是否为零?

    我正在尝试制作我的应用程序的一部分 如果该人不更改我的 UITextField 中的空白文本 那么他 她将无法继续下一步 基本上 我想测试 UITextField 的 nil 文本 我已经使用了 if text 方法 但是如果用户单击 UI
  • 相当于 Interface Builder 中 UIButton 的动态类型“自动调整字体”设置?

    UILabel 有一个Dynamic Type Automatically Adjusts FontInterface Builder 属性检查器中的复选框 Interface Builder 中是否有等效项用于自动调整 UIButton
  • 如何防止 RealmSwift 列表中出现重复项?

    如何防止向列表中添加重复项RealmSwift 我有我的User作为领域对象 但真正的数据源是服务器 只是使用领域在本地缓存用户 当我从服务器获取当前用户数据时 我想确保存储在领域中的用户拥有来自服务器的所有播放列表 以及它们的曲目列表等
  • Swift 使用哪种通用排序算法?它在排序数据上表现不佳

    我一直在挑选和探索 Swift 标准库sort 其函数为Array类型 令我惊讶的是 我注意到它在已经排序的数据上表现不佳 对数组进行排序Int打乱顺序似乎比对已经排序的同一个数组进行排序快 5 倍 对已打乱顺序的对象数组进行排序比对已按排
  • 在 iOS 11 中创建 Gif 图像颜色贴图

    最近 我在创建 Gif 时遇到了一个问题 如果它太大 颜色就会丢失 然而 感谢 SO 的帮助 有人能够帮助我找到解决方法并创建我自己的颜色图 上一个问题在这里 保存动画 Gif 时 iOS 颜色不正确 https stackoverflow

随机推荐

  • HTML5 Canvas 无法在外部 JavaScript 文件中工作

    我已经用 JavaScript 编写了这段代码 当我将其包含在我的 index html 页面上时 它工作得非常好
  • 什么是“覆盖条件”?

    的来源Statemtl 中的变压器 http hackage haskell org packages archive mtl 2 1 2 doc html src Control Monad State Class html states
  • Sqlite 中的多线程

    我正在使用 System data sqlite 连接到 Sqlite 数据库 按照SQLite 文档 http www sqlite org threadsafe html 用户可以通过使用启用多线程SQLITE OPEN NOMUTEX
  • tkinter treeview单击所选项目的事件[重复]

    这个问题在这里已经有答案了 在我的小型 tkinter 应用程序中 我的树具有如下图所示的结构 我只想在用户双击树的最后一个项目 Amount1 或 Amount2 等 时才创建单击事件 不幸的是 当我单击树的任何项目时 单击事件会起作用
  • Node-gyp 和自定义依赖/库/头安装路径

    我有一个构建环境 其中我的库 和标头 安装到自定义位置 从 npm 安装软件包时 使用 node gyp 的模块会失败 因为它们找不到我已安装的库 或标头 如何让 node gyp 知道我的自定义安装位置 linux 如果你设置CXXFLA
  • 无法连接到服务器 127.0.0.1 shell/mongo.js

    当我在 ubuntu 中设置 mongodb 时 我尝试 mongo 它显示此错误 couldn t connect to server 127 0 0 1 shell mongo js 那么我能做什么 thanks 手动删除锁定文件 su
  • 将对象传递给 PowerShell 函数

    我试图将 SQL 适配器对象传递给 PowerShell 函数 但收到此错误 executeQueryAndFillTable 无法处理参数转换 参数 da 无法转换类型的 System Object 值 System Object 以键入
  • 如何使用Vue登录后渲染标题和侧边栏

    我有一个 Vue js 应用程序 目前我使用不同的页面渲染它 我遇到了一个问题 当我第一次登录时 它只会渲染单个主要组件 即根据 vue 路由器的页面 我正在寻找一种方法来运行我的登录功能 然后转到 dashboard但我希望它重新渲染我的
  • 选择最高薪水

    假设工资表 name lowhours highhours wage Default 0 0 40 0 100 Default 40 0 50 0 150 Default 50 0 70 5 154 Default 70 5 100 0 2
  • 从 Perforce 恢复已删除的文件

    上个月我从 Perforce 中删除了一个文件 有办法从 P4 中检索它吗 如果是这样 我可以使用什么命令 注意 我不是 p4 的管理员 我不希望该文件返回到 P4 但我只想将其保留在我的本地工作区中 另外 我不知道上个月删除它的确切时间范
  • 如何获得unix中每列的最大长度?

    假设 我有一个这样的源文件 ID NAME ADDRESS 1 ABC PUNE 2 XYZA MUMBAI 12 VB NAGPUR 我想获取每列的最大长度 不包括标题名称 输出应该是这样的 2 4 6 我已经尝试过这样的命令 尾部 2
  • 相对于batch的查询成本是100%

    我不确定如何解释这一点 但我在 sql server 2005 中运行的所有查询都有 100 的 查询成本 相对于批处理 有什么办法可以降低成本吗 如果您的批次 您在给定调用中执行的操作 有一个查询 那么relative对于该批次 该查询占
  • 如何在android中获取用户定义的“设备名称”?

    我正在尝试获取在设置中设置的用户定义的设备名称 我已经尝试了几种选择 但到目前为止还没有任何结果 如果它有帮助或有害 我需要在广播接收器中使用它 Thanks 这让我得到了我所需要的 http cmanios wordpress com 2
  • 如何从 Google Apps 脚本上的“doPost”请求获取原始 URL

    我一直在尝试识别对 Google Apps 脚本发出的 POST 请求的来源doPost 内容服务 function doPost request Something like this var originURL request head
  • 如何为列表框中的每个项目设置不同的工具提示文本?

    我有一个与对象集合进行数据绑定的列表框 列表框被配置为显示每个对象的标识符属性 我想显示一个工具提示 其中包含悬停在 列表框中的项目的特定信息 而不是整个列表框的一个工具提示 我正在 WinForms 中工作 感谢一些有用的博客文章 整理了
  • 无法在跨客户端google oauth2.0中交换访问令牌和刷新令牌的授权代码

    我在 Android 应用程序上实现 Google Play 服务登录并将授权代码传递到后端服务器时遇到问题 因此服务器将交换访问令牌和刷新令牌的代码 首先让我写几行已经尝试过 读过的内容 在 code google com apis co
  • Zookeeper 的临时 znode 的用例是什么?

    Zookeeper 文档内容如下 ZooKeeper 也有临时节点的概念 只要创建 znode 的会话处于活动状态 这些 znode 就会存在 当会话结束时 znode 将被删除 当您想要实现 待定 时 临时节点非常有用 我了解其功能 但是
  • PHP - 下载次数

    如何显示一个计数器来计算文件的下载次数 我以前见过 下载了 450 次 谢谢 不要让用户直接下载文件 而是通过如下脚本 file REQUEST file dldir downloads if file exists dldir file
  • 计时器、单击、mousedown、mouseup 事件不能一起工作

    正在寻找有关我遇到的问题的帮助 抱歉 如果这个问题已经被问过 我找不到类似的东西 这个想法是当点击图片框时将图像更改为ON 如果按住图片框超过 2 秒以打开新表单并将图片框保留为 关闭 但是 如果图片框被单击 打开 然后按住 2 秒然后返回
  • 在 xcode 中使用调试器 Commend 跳转断点

    我在 Xcode 中使用跳转命令设置了一个断点来强制传递某些条件 但是当它执行到第 168 行时 它崩溃并显示消息 Thread 1 EXC BAD ACCESS code 1 address 0x1 为什么会发生这种事 控制台记录 警告