关于内存的申请与释放
浏览:3066次 出处信息
在C语言中,如果存在malloc,则一定要有free,否则就会产生内存泄露;而且你还不能free两次,否则,程序将直接崩溃。
写PHP程序就比较方便了,你甚至不需要初始化变量,你从来也不用考虑内存回收的问题,但是缺点就是PHP的效率相比C来讲就低多了。
我不知道这种比较是否恰当,我想说的是,有一种内存回收是必须显示地、手动地;有一种内存回收是程序自动探测的。前者效率高很多,但是程序开发的效率就很低了;后者开发效率高,但是程序运行效率低。
后来才发现还有第三种方案: 写程序的时候,你不需要显示地、手动地去释放内存,编译器在编译期间会发现什么地方需要释放内存,自动的将释放内存的代码插进去; 这样的话,开发效率高了,执行效率也高了,编译的时候慢了一些(我们可能不太关心这个)。从文章 http://www.programmer.com.cn/9436/ 来看,object-c的编译器有这个功能; 我想,编译器能做到这种地步,也够煞费苦心的,而且我真的不敢相信编译器不会猜错。
建议继续学习:
- Linux内存点滴 用户进程内存空间 (阅读:11422)
- ps - 按进程消耗内存多少排序 (阅读:11244)
- Linux Used内存到底哪里去了? (阅读:9951)
- Linux操作系统的内存使用方法详细解析 (阅读:8858)
- linux内核研究笔记(一)内存管理 – page介绍 (阅读:8561)
- 几个内存相关面试题(c/c++) (阅读:8006)
- 内存越界的概念和调试方法 (阅读:6278)
- Innodb分表太多或者表分区太多,会导致内存耗尽而宕机 (阅读:6148)
- 必看!linux系统如何查看内存使用情况 (阅读:6143)
- 如何查看Linux 硬件配置信息 (阅读:5863)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
文章信息
- 作者:phpor <lijunjie1982@yahoo.com.cn> 来源: PHPor 的blog
- 标签: 内存
- 发布时间:2012-01-02 20:58:19
建议继续学习
近3天十大热文
- [56] Oracle MTS模式下 进程地址与会话信
- [56] IOS安全–浅谈关于IOS加固的几种方法
- [55] 如何拿下简短的域名
- [54] 图书馆的世界纪录
- [53] Go Reflect 性能
- [53] android 开发入门
- [50] 【社会化设计】自我(self)部分――欢迎区
- [50] 读书笔记-壹百度:百度十年千倍的29条法则
- [39] 程序员技术练级攻略
- [33] 视觉调整-设计师 vs. 逻辑