小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man

之前提到过cocos2d-x的内存回收机制,但是不是很全面,这篇主要写一下release和autorelease的区别,使用autorelease可以简化我们的内存管理,等于将我们的对象放入自动释放池,放入自动对象池的对象会记着你在晚些时候发送的释放信息,因为忘记释放内存有可能会导致内存泄露,当然这样做也有一个缺点,就是当下一帧我们需要再次使用这个对象的时候,我们就会发现我们的对象已经被释放了,就算你把对象作为成员变量,都无法保证不会出现这种错误,这时你有两种办法,第一种办法就是使用retain方法保留,第二种办法就是在addchild的时候,加上tag,然后再当我们需要的时候,我们就可以通过tag再次获得相应的对象即可。

虽然苹果开发者文档建议较少的使用自动释放对象,但是这样做可以方便我们进行内存管理。

和oc一样,cocos2d引擎对于内存管理有些约束,如果你拥有一些对象,你必须在用完之后释放他,如果你使用了autorelease你就不能使用release

使用自动释放的例子

使用释放的例子

使用保留的例子

刚开始研究此引擎,如有错误之处,希望大家多多指正

下一篇写一下test类里面的其他场景

cocos2d-x初探学习笔记(13)--内存回收机制相关推荐

  1. 【JVM学习笔记】内存回收与内存回收算法 就哪些地方需要回收、什么时候回收、如何回收三个问题进行分析和说明

    目录 一.相关名词解释 垃圾收集常用名词 二.哪些地方需要回收 本地方法栈.虚拟机栈.程序计数器 方法区 Java堆 三.什么时候回收 1. 内存能否被回收 内存中的引用类型 引用计数算法 可达性分析 ...

  2. Python3.7学习笔记30-垃圾回收机制

    Python3.7学习笔记30-垃圾回收机制 一.前言 Python 程序在运行的时候,需要在内存中开辟出一块空间,用于存放运行时产生的临时变量:计算完成后,再将结果输出到永久性存储器中.如果数据量过 ...

  3. Redis运维和开发学习笔记(7) 内存管理和过期策略

    Redis运维和开发学习笔记(7) 内存管理和过期策略 文章目录 Redis运维和开发学习笔记(7) 内存管理和过期策略 内存回收策略 惰性删除 定时任务删除 maxmemory 过期策略allkey ...

  4. Hadoop学习笔记—13.分布式集群中节点的动态添加与下架

    Hadoop学习笔记-13.分布式集群中节点的动态添加与下架 开篇:在本笔记系列的第一篇中,我们介绍了如何搭建伪分布与分布模式的Hadoop集群.现在,我们来了解一下在一个Hadoop分布式集群中,如 ...

  5. 深入理解Java虚拟机(第3版)学习笔记——JAVA内存区域(超详细)

    深入理解Java虚拟机(第3版)学习笔记--JAVA内存区域(超详细) 运行时数据区域 程序计数器 java虚拟机栈 本地方法栈 java堆 方法区 运行时常量池 直接内存 对象的创建 对象的内存布局 ...

  6. mybatis学习笔记(13)-延迟加载

    2019独角兽企业重金招聘Python工程师标准>>> mybatis学习笔记(13)-延迟加载 标签: mybatis [TOC] resultMap可以实现高级映射(使用asso ...

  7. opencv进阶学习笔记13:图像形态学操作大全(膨胀,腐蚀,开闭,黑帽,顶帽,梯度)python版

    基础版学习笔记: python3+opencv学习笔记汇总目录(适合基础入门学习) 进阶版笔记目录链接: python+opencv进阶版学习笔记目录(适合有一定基础) 基础版形态学: opencv学 ...

  8. cocos2d-x初探学习笔记(3)--动作(CCAction)

    小满(bill man)个人原创,欢迎转载,转载请注明地址,小满(bill man)的专栏地址http://blog.csdn.net/bill_man 1.内存自动回收 Cocos2d-x提供了一种 ...

  9. Linux学习笔记13

    Linux学习笔记13 Linux学习笔记13 配置Nagios 基本介绍 Nagios安装 - 服务端 Nagios安装 - 客户端 监控中心添加被监控主机 配置文件的简单说明 继续添加需要服务端通 ...

最新文章

  1. 论文 | 图像和谐化公开数据集:让前景和背景更“般配”
  2. 人机融合智能:人工智能3.0
  3. pythonint切片_python-切片
  4. head,branch,version,date
  5. winform 64位系统中使用
  6. 【LeetCode笔记】79. 单词搜索 剑指 Offer 12 矩阵中的路径(Java、dfs)
  7. fastadmin在html中查询数据,FastAdmin模块开发快速上手
  8. json字符串,JSON对象,JSON数组的区别与相互转换
  9. 代数学笔记10.1: 关于对称多项式的理解和三次预解式的推导
  10. AWS上的Cilium网络拓扑和流量路径
  11. tree方法php,jsTree详细使用说明
  12. Android——最全的系统对话框(AlertDialog)详解
  13. [book] iOS 8 Swift Programming Cookbook
  14. 聪明人:三不管,四不说,五不帮!
  15. 安装配置NTP服务器
  16. python学习笔记1---class
  17. 【经验总结—1】:研究僧常用文献搜索网站和下载方法
  18. 美通社企业新闻汇总 | 2019.1.28 | 万豪集团2018年创增长新纪录;英特尔宣布AI合作伙伴创新激励计划...
  19. Java设计模式——工厂模式——模拟Spring
  20. redis安装+客户端

热门文章

  1. 使用Lambda优化日志案例
  2. InvalidClassException异常_原理和解决方案
  3. 设计模式之_Iterator_06
  4. jQuery版本的网页开关灯、jQuery版本网页开关灯的另一种写法
  5. Spring Security源码解析(二)——引入
  6. python实时获取子进程输出_Python 从subprocess运行的子进程中实时获取输出的例子...
  7. 计算机与人力资源管理论文,人力资源管理专业计算机能力培养模式论文
  8. C51_按键按下,流水灯亮起,数码管显示按下的次数
  9. ScrollView嵌套ListView后,进入页面不从顶部开始显示的问题解决
  10. collection配置说明