我要释放多少次已分配或保留的对象?

2024-01-25

我正在制作一款 iPhone 游戏。我想释放所有已分配或保留的对象。在里面dealloc我正在释放所有此类对象,但后来我意识到有时我最终会在对象尚未分配时释放它们。所以我想我需要检查一下是否retainCount在我释放它之前是否大于零。

我的问题是:

我是否只是检查retainCount大于零然后释放它?

if([bg retainCount]!=0)
{
  [bg release];
}

or

我是否应该释放它多次retainCount

while([bg retainCount]!=0)
{
  [bg release];
}

感谢您的帮助!


不要使用-retainCount。

对象的绝对保留计数是没有意义的。

你应该打电话release与您导致对象被保留的次数完全相同。不能少(除非你喜欢泄漏),当然也不能多(除非你喜欢崩溃)。

See the 内存管理指南 https://developer.apple.com/library/ios/#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmRules.html%23//apple_ref/doc/uid/20000994-BAJHFBGH了解完整详情。

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

我要释放多少次已分配或保留的对象? 的相关文章

随机推荐

  • 使用 Python 读取 CR2(原始佳能图像)标头

    我正在尝试提取从 CR2 原始图片的佳能格式 拍摄照片的日期 时间 我知道CR2规格 http lclevy free fr cr2 而且我知道我可以使用 Pythonstruct http docs python org library
  • ASP.NET Core:是否可以使用HttpClient获取文件并直接返回?

    我有一个内部 API 可以获取并返回文件结果 但是 此 API 没有任何身份验证 角色 权限检查的概念 并且无法修改以执行此操作 我想在现有的 ASP NET Core 2 Web API 上创建一个 Web API 端点来进行权限检查 调
  • Prolog 搜索从列表中减去 2 个元素的可能组合

    这是本页的扩展问题 Prolog 可能删除列表中的元素 https stackoverflow com questions 33652059 prolog possible removal of elements in a list 336
  • 在 Visual Studio 中调试/导航 JS 代码

    有没有办法启用f12 or 查找所有参考文献 across JavaScript文件在视觉工作室 我在用着要求JS在我的 SPA 中注册 js 文件 我在用着骨干JS以及 有什么技巧可以像使用 C net 代码一样在 Visual Stud
  • 优化自定义 WordPress SQL 查询以获取用户元数据

    我有以下查询并且它有效 但由于它的堆积 处理需要非常长的时间 因此 我需要帮助才能更快地获得此查询 SQL查询 在查询中 PRODUCT ID 应替换为 和产品 ID 号 SELECT b order id customer meta me
  • 在 bin 文件夹之外的 ASP.NET 项目中解析程序集

    我怎么能够解析程序集引用在 ASP NET Web 开发服务器的 bin 文件夹之外 这对于没有相同 dll 的副本很有用 什么都不起作用 探测 web config 中的元素 http msdn microsoft com en us l
  • Grep 输出添加额外的破折号和换行符

    我在 mac 上使用 bash 来运行一些 grep 并且使用随 macports 安装的 GNU grep 无论如何 我正在尝试使用 grep 查询 fasta 文件 DNA 序列 序列 ID 在一行上 DNA 序列在下一行 以根据要查询
  • IOS 如何使用 nsscanner 类查找完整的 rss feed 链接

    我正在致力于从基于 RSS feed 的项目中获取数据 通过在 google 上搜索 我发现通常在 HTML 源中以这种格式找到 RSS 链接 所以 我必须使用 nsscanner 类从 HTML 源中查找 RSS feed 的链接 但我不
  • 如何使用 google 地图 api v3 旋转地图方向

    非常简短的问题 因为我在谷歌地图 api V3 文档中找不到答案 我正在寻找一个控件 它允许我控制 修改 api 地图的方向 以便北不在顶部 这可能吗 如果是这样 怎么办 Thanks 你可以这样做45度虚数 https developer
  • 在 Maven 中创建 zip,并在 jar 旁边添加其他文件

    我唯一的 Maven 经验是包含其他库 因此我需要一个非常基本的解释来说明如何使用 Eclipse 在 Maven 中实现某些功能 我想定期创建我的罐子 然后我想再获取 3 个文件 并将所有文件放在 1 个 zip 文件中 我的 zip 内
  • 如何传递对 aframe 组件的引用?

    我正在编写一个自定义 aframe 组件来渲染基于很长的对象数组的网格 Aframe 文档仅将数组列为输入类型 您可以在其中传递属性 它将被解析为数组attributename 1 2 3 我想从外部将 JavaScript 引用传递到组件
  • 相当于WPF中的InvokeRequired

    WPF 中是否有与 Form InvokeRequired 等效的函数 例如调度程序 InvokeRequired 这有点奇怪 因为它没有出现在智能感知中 但您可以使用 var dispatcher myDispatcherObject D
  • 当 GPS(或定位服务)启动/停止时接收通知(通过 BroadcastReceiver)

    我尝试了一种使用 BroadcastReceiver 来侦听的方法提供商 已更改 http developer android com reference android location LocationManager html PROV
  • 如何从 WCF 服务返回干净的 JSON?

    我正在尝试从 WCF 服务返回一些 JSON 该服务只是从我的数据库返回一些内容 我可以拿到数据 但是 我担心 JSON 的格式 目前 返回的 JSON 格式如下 d Age 35 FirstName Peyton LastName Man
  • 估算 scikit-learn 中的分类缺失值

    我有一些带有文本类型列的熊猫数据 这些文本列中还有一些 NaN 值 我想做的是将那些 NaN 归咎于sklearn preprocessing Imputer 用最常见的值替换 NaN 问题出在执行上 假设有一个包含 30 列的 Panda
  • Django ImproperlyConfigured:无法加载 WSGI 应用程序“myproject.wsgi.application”;导入模块时出错

    我几乎全新安装了 django 当我运行时python manage py runserver 它给了我这个错误 配置不正确 无法加载 WSGI 应用程序 myproject wsgi application 导入模块时出错 设置 py W
  • 如何转发带有可变参数的函数?

    在 Swift 中 如何将数组转换为元组 出现这个问题是因为我试图在一个采用可变数量参数的函数内部调用一个采用可变数量参数的函数 Function 1 func sumOf numbers Int gt Int var sum 0 for
  • 检查重复项时的最佳自连接技术

    我正在尝试优化生产中的查询 该查询需要很长时间 目标是根据匹配字段值条件查找重复记录 然后将其删除 当前查询通过 t1 col1 t2 col1 上的内部联接使用自联接 然后使用 where 子句来检查值 select from table
  • 为什么异步端点的过滤器链被调用两次

    我正在开发一个基于 Spring boot 的应用程序 我注意到 对于异步端点 身份验证过滤器被调用两次 对于常规端点 它被调用一次 没找到原因 不过在网上发现了一个问题https jira spring io browse SPR 126
  • 我要释放多少次已分配或保留的对象?

    我正在制作一款 iPhone 游戏 我想释放所有已分配或保留的对象 在里面dealloc我正在释放所有此类对象 但后来我意识到有时我最终会在对象尚未分配时释放它们 所以我想我需要检查一下是否retainCount在我释放它之前是否大于零 我