Objective-C - 测试对象实例被释放/释放

2024-03-18

有某种方法可以测试 Objective-C 实例是否被释放/释放(保留计数 == 0)?

例如,对象 A 有一个指向对象 B 的引用(指针),但对象 B 可以在内存低级别中释放,我如何测试引用 B 以确保它已被释放?

@interface A : NSObject {
    B b;
}

@implementation A {

- (void) someAction:(id) sender {
    //is b previously dealloced?? 
    if ..... ???? {
        b = [[B alloc] init];
    }
    // continue
}
}

Thanks!!


如果您设置NSZombieEnabled环境变量,然后释放的对象成为实例NSZombie。当它们下次收到消息时,它们会抛出,导致您的代码崩溃并烧毁 - 这正是您调试这种情况所需要的。

http://www.cocoadev.com/index.pl?DebuggingAutorelease http://www.cocoadev.com/index.pl?DebuggingAutorelease

Update:对于 XCode 4.0,请参阅如何在 Xcode 中启用 NSZombie? https://stackoverflow.com/questions/5386160/how-to-enable-nszombie-on-xcode-4

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

Objective-C - 测试对象实例被释放/释放 的相关文章

  • UITableViewCell 内的 UIPageViewController

    嘿我想问如何在 UITableViewCell 内实现 UIPageViewController 我一直在阅读周围的内容 但到目前为止似乎对任何尝试的人都不起作用 我希望得到一些提示 不需要完整的答案 谢谢 目前还不清楚你到底想做什么 但让
  • 从 iPhone 设备查找当前国家/地区

    我必须在 iPhone 设置中获取当前国家 地区 谁能告诉我如何在 iPhone 应用程序中获取当前国家 地区 我必须使用当前国家 地区来解析需要传递当前国家 地区的 RSS 提要 请帮我找到那个国家 提前致谢 要查找用户选择的语言所在的国
  • 检测用户何时清除通知中心的通知

    我的应用程序需要知道用户是否使用清除按钮从通知中心删除 清除应用程序通知 是否可以检测用户何时从通知中心删除通知或抓取通知中心上的一组通知 你 即App 无法与NotificationCenter交互 NotificationCenter与
  • iOS 上的多个 HTTP 请求与单个 TCP 连接

    我正在开发一个 iPhone 应用程序 它使用我控制的基于 Web 的 API 连接到持续打开的 TCP 端口并通过 TCP API 发出请求 或者为我想要获取的所有数据发出新的 HTTP 请求 会更快或更高效吗 我认为差异可以忽略不计 但
  • 使用 Python-AppKit-Objective C 转换为预组合 Unicode 字符串

    苹果公司的这份文件技术问答 QA1235 http developer apple com qa qa2001 qa1235 html描述了一种将 unicode 字符串从组合版本转换为分解版本的方法 由于我对包含某些字符 例如重音符号 的
  • UITableView 无法一直滚动到底部[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我只是好奇 我做了一些UITable
  • 永远不会在 ios 的 google API 中获取上传数据进度

    我在我的应用程序中使用 Google Drive API 从我的应用程序上传文件 到目前为止 我成功了 并找到了上传所有类型文件的良好结果 我跟着谷歌示例 https developers google com drive examples
  • 如何从 Xcode 4 中的实体创建用户界面?

    我已经用核心数据进行了几天的实验 并且在过去的几个小时里尝试找出如何从 xcode 4 中的实体创建 UI 根据我一直在阅读的书籍 您必须选择将核心数据实体拖到界面生成器中的窗口中 但是当我在 xcode 4 中执行此操作时 没有任何反应
  • 如何读取 Xcode 6.1 Instruments .trace 文件?

    我一直在尝试阅读 trace文件 我使用生成的custom仪器模板 仪器 自动机 分配 Leaks using 仪器 https developer apple com library mac documentation Developer
  • 通过应用程序组在应用程序之间通信和保存数据

    iOS 8 昨天发布了一个有关应用程序组的新 API 以前在应用程序之间共享数据和通信有点混乱 我相信这正是应用程序组旨在纠正的问题 在我的应用程序中 我启用了应用程序组并添加了一个新组 但我找不到任何有关如何使用它的文档 文档和 API
  • 如何将 CIFilter 输出到相机视图?

    我刚刚开始使用 Objective C 我正在尝试创建一个简单的应用程序 它显示带有模糊效果的相机视图 我得到了与 AVFoundation 框架一起使用的相机输出 现在 我正在尝试连接 Core 图像框架 但不知道如何连接 Apple 文
  • 禁用 iPhone 4S / 新 iPad 键盘上的听写按钮

    我们的应用程序是一个医疗保健应用程序 我们的应用程序中有一个符合 HIPAA 标准的语音识别器 所有听写都可以通过它进行 医院不希望医生意外开始与不符合 HIPAA 标准的 Nuance Dragon 服务器进行对话 因此 我正在寻找可以抑
  • Cocoa 基于文档的应用程序中的 MVC

    我目前正在对我的应用程序进行重构和重组 我意识到模型和视图及其控制器之间的一些分离已经减少 我希望进行一些清理 我的应用程序中使用了几个关键类 NSPersistentDocument NSWindowController 和模型类 NSP
  • 如何检测 UISearchBar/UITextField 输入中的暂停?

    我有以下 UISearchbar 代码 void searchBar UISearchBar searchBar textDidChange NSString searchText UIApplication sharedApplicati
  • 如何从 DTrace 脚本打印 NSString

    This question https stackoverflow com questions 1413623 how do i print a cfstringref in a dtrace action正在问同样的事情 但是当我尝试时
  • 在 Swift 中使用 commitEditingStyle 动态删除 UITable 部分

    我正在处理一个无法解决的问题 我有一个来自客户数据库数组的名称表 每个客户在其他数据成员中都有一个名称属性 我可以成功删除某个部分中的行 但我不能删除该部分 当该部分中的最后一行被删除时 该部分必须消失 I got NSInternalIn
  • CGContextSelectFont 等效项

    在 iOS 7 CGContext SelectFont 中已弃用 已弃用的消息说我必须使用 Core Text 但我不知道哪一个与这段代码完全相同 CGContextSelectFont context Helvetica kBarLab
  • Xcode 4 调试器代码完成

    首先 很高兴他们尝试在 Xcode 4 中的 gdb 命令提示符上完成代码 但在当前状态下 它使得使用命令提示符来调查目标 c 对象几乎不可能 当我打字时 它自动将单词补全为我不想要的内容 并且如果不手动选择文本并将其删除 然后重新开始 则
  • 为每行 NSTableView 文本着色

    我有一个 NSTableView 它显示我拥有的对象数组 对于每个对象 行 我想根据在每个对象上运行的函数的结果来更改显示的文本的颜色 因此 例如表中存在于另一个列表 或其他一些要求 中的所有对象 我想以绿色文本显示它们 不存在的对象以红色
  • 如何将unix时间戳转换为iphone中的nsdate [重复]

    这个问题在这里已经有答案了 可能的重复 从 Unix 时间戳创建 NSDate https stackoverflow com questions 5827240 create nsdate from unix timestamp 我有一个

随机推荐

  • 通过 DriveApp.getFileById 从 Google Drive 到 Google Slides 的图像

    我想在按照说明后通过 Google Apps 脚本将图像导入到 Google 幻灯片Google 开发者 如何 https developers google com slides how tos add image about image
  • 计数聚合点计数语法 (.count)

    所以今天早上我遇到了一个奇怪的错误 当时我不小心提到了 CTE 中不存在的 计数 列 Postgres 正在寻找 GROUP BY 子句 尽管我不认为我在做聚合 再多尝试一下 就会发现 table count 相当于计数星函数 考虑以下 S
  • 参数变化:固定,但运行的种子不同

    所以我用许多概率参数进行了参数变化实验 我使用随机种子 这会产生各种不同的结果 这基本上就是我想要的 在我的例子中 一项实验包含 200 次运行 然而 在随机建模中 在相同的运行中使用相同的种子是一个很好的做法 即当我运行两个实验 每个实验
  • Rails:用户在使用 :remote => true 销毁不相关的对象后注销

    我正在跟进http railscasts com episodes 250 authentication from scratch http railscasts com episodes 250 authentication from s
  • MATLAB - 音频信号的音高变换

    我的小组正在开发一个简单的 MATLAB 图形用户界面 GUI 该界面旨在记录来自插入或内置于计算机的麦克风的音频并回放信号 到目前为止我们已经完成了 我们的 GUI 还可以加载示例 wav 文件等 并使用 GUI 上的相同 播放 按钮进行
  • Django:values_list()连接多个字段

    我有一个Person模型 我正在使用 django 表单来编辑另一个带有外键的对象Person 人物模型有first name and last name字段 我想运行一种方法来过滤外部引用下拉框的结果 我正在尝试使用values list
  • 我是否可以享受父子关系带来的好处,而无需承担数据存储争用的成本?

    假设 1 Google AppEngine 有实体组的概念 2 实体组中的实体形成一棵树 然而 据我了解 对该树中任何实体的每次 put 都会锁定整个树 而不仅仅是直接父级 一段时间 3 允许用户写ca 每秒5次到树上 4 无法实现非锁定行
  • Flask RESTful POST JSON 失败

    我在通过 curl 从 cmd Windows 7 将 JSON 发布到 Flask RESTful 时遇到问题 这就是我发布的内容 curl exe i H Content Type application json H Accept a
  • Postgres 执行函数(如果存在)

    是否可以编写一个选择语句来执行函数 如果存在 SELECT COALESCE CASE WHEN EXISTS SELECT FROM pg proc WHERE proname func name THEN null ELSE false
  • 在 MySQL 中对同一个表使用子查询

    我有一张桌子叫Staff它有以下字段 idStaff Name Phone Email SupervisorId The SuervisorId is the idStaff该工作人员的主管 我想显示所有员工的列表及其基本信息 姓名 电子邮
  • Elasticsearch 一个月内特定小时的总价值

    我有一个带有字段的elasticsearch服务器 timestamp user and bytes down 除其他外 我想计算用户一个月内的 bytes down 值总计 但仅限于上午 8 点到晚上 8 点之间的时间 我可以通过以下查询
  • 如何自动加载键盘(iOS SDK)?

    非常简单的问题 我得到一个由两个文本字段组成的视图 当视图加载时 我希望键盘自动弹出并聚焦第一个字段 我怎么做 在代码中 在 IB 中 多谢 芥末 In your viewDidAppear 方法调用 yourTextField becom
  • 使用相同表单名称进行 Jquery 验证[重复]

    这个问题在这里已经有答案了 我有一个表格可以做两件事 将名字和电子邮件地址传递给 PHP 如果用户想要提交多于一组或两组数据 则单击即可动态添加一组新的姓名 电子邮件字段 由于我不确切知道每个用户可能选择提交多少组 因此我将数据以数组形式传
  • 给出分割错误的 2D 矢量

    我正在尝试使用向量创建一个二维数组 我编写了以下代码 int main vector lt vector
  • 无法在 Sitecore 项目上设置工作流程和工作流程状态属性

    我目前正在开发一个项目 需要我设置一个非常简单的 Sitecore 工作流程 在修改现有项目以使用新工作流程时 我遇到了一些困难 这就是我所做的 当内容管理员开始编辑项目时 工作流程会创建一个新版本 并在单击提交按钮时发布该项目 我将这些工
  • 如何(策略)以 BDD 风格对属性(获取/设置)进行单元测试?

    我有一个 很多 类具有属性 有些有逻辑 有些则没有 假设我想测试这些属性 我该怎么做呢 最近 我对用于创建单元测试的 BDD 风格很感兴趣 see here http iridescence no post Extending xUnit
  • ASP.NET 身份 cookie 和子域

    我正在尝试跨子域共享我的 ASP NET Identity cookie 目前只是本地 sub1 domain local 子2 域 本地 我有相同的机器密钥在两个站点上 但在 sub1 上创建的 cookie 不会在 sub2 上验证 反
  • 如何让StatusBar透明?

    有谁知道如何使用 React Native 使 Android 状态栏透明 不是半透明的 是透明的 我也在使用反应导航 就像这样使用它 测试使用 react native 0 60 4 和 0 61 5
  • ASP.NET MVC 列表框处理所选项目事件

    我在视图中使用 HTML ListBox 如下所示 这是用 IEnumerable 填充的
  • Objective-C - 测试对象实例被释放/释放

    有某种方法可以测试 Objective C 实例是否被释放 释放 保留计数 0 例如 对象 A 有一个指向对象 B 的引用 指针 但对象 B 可以在内存低级别中释放 我如何测试引用 B 以确保它已被释放 interface A NSObje