位置: 编程技术 - 正文

cocos2dx 使用过程中内存管理的理解(cocos2dx 教程)

编辑:rootadmin

推荐整理分享cocos2dx 使用过程中内存管理的理解(cocos2dx 教程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos2dx运行原理,cocos2dx 教程,cocos2d怎么用,cocos2dx怎么用,cocos2dx用什么ide,cocos2dx用什么ide,cocos2dx4.0教程,cocos2dx官方教程,内容如对您有帮助,希望把文章链接给更多的朋友!

关于引擎内存管理的细节,网上有大量的详解,这里概括一下:

cocos2d-x 的世界是基于 CCObject 类构建的,所以内存管理的本质就是管理一个个 CCObject。

这里引入了自动释放池的概念,它的作用是:每一帧都检测池中对象的引用计数。为什么需要它?

>>使用create创建一个对象时候,我们可能并不立即使用,这时为了保证在使用之前不会被释放掉,就让它存活一帧,所以初始引用计数为1。

cocos2dx 使用过程中内存管理的理解(cocos2dx 教程)

>>如果当前帧结束了,仍然没有使用,则在帧过渡时,自动释放池会遍历池中的对象,使其引用计数-1,释放掉对象,所以下一帧就不存在了。

由此可见,创建的对象如果没有使用,则会交由自动释放池自动释放掉,不需要担心。那如何才算使用了呢?

》任何导致引用计数增加&#;&#;(>1)的行为都算是使用了:

最后列几个需要注意的地方:

1>CCArray创建之后,需要retain,在使用该数组的类中析构函数中release它。

2>new出来的对象,即不采用cocos2dx内置的内存管理方式时,尤其要注意手动释放delete,因为它没有添加到自动释放池中,导致初始时的引用计数1没有释放。

3>new和create的一个重大区别:没有走父类的init()函数。有些父类(例Widget)在init()中做了一些初始工作,此时new出来的对象缺少这部分操作(有些成员没有初始化),在释放的时候会报错。这种情况主要发生在new一个CCNode及其子类对象的身上。

[置顶] [寒江孤叶丶的Cocos2d-x之旅_]在Cocos2d-x中集成protobuf (Protocol Buffers) 原创文章,欢迎转载,转载请注明:文章来自[寒江孤叶丶的Cocos2d-x之旅系列]博客地址:

Cocos2dx技术(三)——cocos2dx基本概念(五)场景 一、什么是场景场景是包含精灵、标签、节点和其他游戏UI元素的对象容器。场景负责游戏逻辑的运行和游戏内容的逐帧渲染。每个游戏至少需要一个场

[常见错误 及 解决方案系列]USE " cc.exports.* = value " INSTEAD OF SET GLOBAL VARIABLE" 原创文章,欢迎转载,转载请注明:文章来自[寒江孤叶丶的常见错误及解决方案系列]博客地址:

标签: cocos2dx 教程

本文链接地址:https://www.jiuchutong.com/biancheng/368919.html 转载请保留说明!

上一篇:2015-04-08---cocos2dx一个都不能死(含源码)

下一篇:[置顶] [寒江孤叶丶的Cocos2d-x之旅_29]在Cocos2d-x中集成protobuf (Protocol Buffers)

  • 税控盘开票软件访问数据库错误
  • 境外企业在中国境内承包建筑工程应在
  • 发票系统口令锁定
  • 所得税汇算清缴账务处理
  • 资金收益率计应收账款吗
  • 增值税专用发票抵扣期限
  • 盈余公积补亏为什么未分配利润增加
  • 水利建设基金的会计分录
  • 薪金性支出包括什么
  • 一般纳税人销售农产品增值税税率
  • 建行分期通
  • 为企业担保
  • 债务重组双方如何进行会计处理
  • 扶持资金属于政府补助吗
  • 护栏发票税点
  • 个人捐款单位需要记账吗
  • 固定资产清理营业外收入交增值税吗
  • 出口一般纳税人的税率
  • 货物退回发票冲红会计分录
  • 工资先发一半
  • 工程费用包括哪几类
  • 企业研发活动中心职责
  • 如何解决win7系统搜不到蓝牙耳机
  • 原始股解禁后减持的条件是什么
  • 销售回款率怎么计算
  • 提供加工服务的企业
  • linux版笔记本什么意思
  • 公司作为股东有什么好处
  • php递归实现1到100的和
  • 收到汽车维修费的会计分录
  • 支付包装物押金是什么科目
  • 转让股权怎么做分录
  • php 动态调用类方法
  • 学摄影要交学费吗
  • 金蝶利息收入结转怎么弄
  • metareg命令
  • 企业转让应收账款分录
  • mongodb doc
  • 租赁合同印花税税率2023
  • 所得税的应税所得额
  • 个体户不刻公章也要报税吗
  • 电子发票与纸质发票具有不同的法律效力
  • 什么情况个税可以扣除
  • Mysql 创建索引锁表
  • 固定资产加速折旧是什么意思
  • 纳税人减免税申请表怎么填
  • 微信账单可以用来干嘛
  • 应收账款确认无法收回的会计处理
  • 会计凭证销毁年限
  • 工程分包如何开具发票
  • 捐赠支出税前扣除标准
  • 提取法定盈余公积会计分录
  • 银行承兑汇票贴现利息怎么算
  • 退休人员在企业工作工资怎么算
  • 公司销售给客户的感谢信
  • 未使用的固定资产计提折旧计入什么科目
  • 记账凭证附单据数怎么算
  • 购房增值税发票是购房发票吗
  • 稳岗补贴如何入账
  • 金蝶的数量金额明细账是怎么做的
  • Slave memory leak and trigger oom-killer
  • delete from 表名 where
  • win10如何设置快捷键
  • ubuntu英文系统安装中文输入法
  • window10虚拟系统
  • linux删除u盘记录
  • 电脑xp系统备份
  • windows8.1卸载软件
  • linux如何使用u盘
  • unity shader lerp
  • 将list转换为json字符串
  • 更改uac设置在哪
  • 基于web的学生成绩管理系统毕业论文
  • 实用的批处理
  • linux sleep 2
  • javascript基础教程pdf
  • 【mclin】手把手叫你在Eclipse里添加Android开发功能(附:完整离线版Android_SDK和Android_ADT下载)
  • 如何开发一个新的向量库
  • 深圳税务局实名注册
  • 内蒙古一般纳税人查询网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设