Symbian解决内存泄露的机制:Cleanup Stack

概念:

构造一个全局堆栈,用来记录类对象指针。每实例化一个对象,则将对象指针备份到这个堆栈中,程序go on。最终两种情况:①所有函数执行完毕,从堆栈中将这个指针弹出销毁。②函数异常退出,则由备份指针将对象销毁。由此避免内存泄露。

使用:

CleanupStack是静态类,使用前应安装一个清除栈,即实例化 CTrapCleanup类对象。

  CTrapCleanup *cleanup = CTrapCleanup::New();

  TRAPD(mainError,DoStartL());

  delete cleanup;

So,对每一个使用New 操作符(及其重载版本)构造的对象指针,均要在使用前将其压入清除栈,最后弹出并销毁。

转载于:https://www.cnblogs.com/RyanminKy/archive/2011/08/17/2142728.html

Symbian的内存管理机制相关推荐

  1. Android内存管理机制详解,【安卓知识普及贴】之关于安卓内存管理机制的一些介绍和阐述。...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 安卓系统其实不需要极度精简,只是一味的精简并不会给系统带来什么好处反而只有害处,因为许多系统应用跟设置里的选项有关联,删除掉就会在选择关联选项的时候FC, ...

  2. Symbian OS内存管理介绍

    Symbian OS内存管理介绍 在Symbain OS中内存管理的主要任务是:如何为程序分配内存以及如何在程序的内部分配内存. Symbian OS 程序最根本和基础的东西就是内存,作为一个有限的资 ...

  3. 什么是 Python 的 「内存管理机制」?

    什么是内存管理器(what) Python作为一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言,与大多数编程语言不同,Python中的变量无需事先申明,变量无需指定类型,程序员无需关心内存 ...

  4. python中内存管理机制一共分为多少层_python 内存管理机制

    内存管理机制 ​python中万物皆对象,python的存储问题是对象的存储问题,并且对于每个对象,python会分配一块内存空间去存储它 ​Python的内存管理机制:引入计数.垃圾回收.内存池机制 ...

  5. JVM内存管理机制线上问题排查

    本文主要基于"深入java虚拟机"这本书总结JVM的内存管理机制,并总结了常见的线上问题分析思路.文章最后面是我对线上故障思考的ppt总结. Java内存区域 虚拟机运行时数据区如 ...

  6. 浅析java内存管理机制

    内存管理是计算机编程中的一个重要问题,一般来说,内存管理主要包括内存分配和内存回收两个部分.不同的编程语言有不同的内存管理机制,本文在对比C++和java语言内存管理机制的不同的基础上,浅析java中 ...

  7. 内存分段分页机制理解_深入理解虚拟机,JVM高级特性-自动内存管理机制

    什么是自动内存管理机制? 对于java程序员来说,有一点是要比C/C++程序员要方便的,那就是程序在运行时,java程序不需要为每一个对象其编写对应的释放内存的代码,JVM虚拟机将为你在合适的时间去释 ...

  8. 【Python基础】什么是Python的 “内存管理机制”

    什么是内存管理器(what) Python作为一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言,与大多数编程语言不同,Python中的变量无需事先申明,变量无需指定类型,程序员无需关心内存 ...

  9. Redis的持久化机制与内存管理机制

    1.概述 Redis的持久化机制有两种:RDB 和 AOF ,这两种机制有什么区别?正式环境应该采用哪种机制? 我们的服务器内存资源是有限的,如果内存被Redis的缓存占满了怎么办?这就要看Redis ...

最新文章

  1. assert()函数用法总结【转】
  2. go:系统参数or函数--未完
  3. KlayGE 4.0中Deferred Rendering的改进(四):GI的神话
  4. 如何使用Arthas提高日常开发效率?
  5. centos下使用yum命令安装php mcrypt扩展
  6. 00 后 CEO 何以“将马云和马化腾两家一网打尽”
  7. Unity加载模块深度解析(纹理篇)
  8. 「随机化快排」期望运行时间证明
  9. MATLAB下载教程
  10. AutoCAD Electrical(ACE)的基本操作——新建项目、绘制电气原理图、线路标号
  11. 51单片机小车的立项书_基于51单片机的寻迹小车设计报告.doc
  12. idea保存快捷键_IntelliJ IDEA 快捷键大全 | 终极版
  13. Delphi另一个多线程函数:BeginThread用法
  14. python爬虫时爬取的html代码显示“请开启JavaScript并刷新该页”
  15. cmd指令ie打开html文件,命令行调用 IE 浏览器打开指定网址
  16. Git Branching
  17. java 生成csv文件_Java生成CSV文件实例详解
  18. 拼多多java后台笔试题目总结(20180830)
  19. 《贝叶斯思维:统计建模的Python学习法》——2.3 贝叶斯框架
  20. 2022年卡塔尔世界杯的“科技与狠活”

热门文章

  1. 纯css3鼠标经过出现文字或图片鼠标移走消失
  2. IOS 6.0+ Autolayout — UITableViewCell 高度调整
  3. 【爱上Java8】BigInteger在Java8中的改进
  4. Windows Server 2008 without Hyper-V 版本
  5. Repeater 嵌套 绑定数据,嵌套的Repeater无法绑定的问题
  6. 【cocos2d-x】游戏构成要素②----使用多个层
  7. 北信源IPO,拟筹资开发企业级云安全管理平台
  8. c# webBrowser打开pdf问题
  9. Ionic 存储目录 CORS
  10. linux change linux login shell