在objective-c中,内存的引用计数一直是一个让人比较头疼的问题。尤其是当引用计数涉及到arc、blocks等等的时候。似乎ARC的出现只是让我们解放了双手,由于底层实现依然依赖引用计数,所以开启ARC后,只有对引用计数机制更加了解,才能避免Cycle Retain、Crash等问题的出现。
但是由于使用ARC可以显著提高编码效率,所以建议尽量启用arc,本文内容也将以arc为主,...
分类:
其他好文 时间:
2014-06-20 12:55:02
阅读次数:
259
我们知道要实现单链表,必须要有指针,那么像Java这样没有指针的的语言就略显蛋疼了。
没关系,我们有静态链表,其本质就是用采用数组的方式实现单链表的功能。
1,静态链表其实是单链表的另一种实现方式
2,静态链表的实现“媒介”不是指针而是数组
3,静态链表主要用于不支持指针的程序设计语言中
4,静态链表的实现是一种内存管理的简易方法...
分类:
编程语言 时间:
2014-06-20 11:30:38
阅读次数:
227
C语言内存管理主要包括malloc()、remalloc()、free()三个函数。本文主要介绍动态分配二维数组的三种方法,及malloc的使用注意事项(判断成功否,释放)
分类:
编程语言 时间:
2014-06-11 07:48:46
阅读次数:
321
本文主要解说缺页处理程序,凝视足够具体,不再解释。//以下函数将一页内存页面映射到指定线性地址处,它返回页面的物理地址//把一物理内存页面映射到线性地址空间指定处或者说把线性地址空间指定地址address处的页面映射到主内存区页面page上。主要工作是在相关也文件夹项和页表项中设置指定页面的信息。在...
分类:
系统相关 时间:
2014-06-08 06:34:29
阅读次数:
285
redis是一个key-value存储系统。和Memcached类似,它的效率很高。目前推出了LIN版本和WIN版本.虽然不怎么使用数据库,但是抱着开卷有益的心态,我学习了下其中的数据结构,还是受益良多的。参考
黄健宏 (huangz1990).1、内存管理 redis使用内存头加内存结构 red....
分类:
其他好文 时间:
2014-06-08 01:27:42
阅读次数:
322
public static Bitmap readBitmap(String path) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfi...
分类:
移动开发 时间:
2014-06-07 23:47:53
阅读次数:
293
上一篇中介绍了内存管理的思路和算法,我们已经可以动态申请和释放内存了。这不就是堆(Heap)么。在此基础上,本篇要做一段程序,一并解决窗口和鼠标的叠加处理问题。
分类:
其他好文 时间:
2014-06-07 17:00:16
阅读次数:
196
第八章
内存管理1.背景1)内存:由存储单元(字节或字)组成的一维连续地址空间;由顺序编址的块组成,每块包含相应的物理单元;用来存放当前正在运行的程序的代码或数据;是程序中指令本身(程序计数器)所指向的存储空间。内存可以分为:系统区:用于存放操作系统。用户区:用于装入并存放用户程序和数据。防止用户进...
分类:
其他好文 时间:
2014-06-07 08:37:14
阅读次数:
221
存储管理的基本原理内存管理方法内存管理主要包括内存分配和回收、地址变换、内存扩充、内存共享和保护等功能。下面主要介绍连续分配存储管理、覆盖与交换技术以及页式与段式存储管理等基本概念和原理。1.
连续分配存储管理方式连续分配是指为一个用户程序分配连续的内存空间。连续分配有单一连续存储管理和分区式储管理...
分类:
其他好文 时间:
2014-06-06 13:30:59
阅读次数:
240
上一篇中处理掉了绝大部分与CPU配置相关的东西。本篇介绍内存管理的思路和算法。现在想想,从软件工程师的角度看,CPU也只是一个软件而已:它的功能就是加载指令、执行指令和响应中断,而响应中断也是在加载指令、执行指令。就像火车沿着一条环形铁轨前进;当中断发生时,就好像铁轨岔口处变轨了,火车就顺着另一条轨...
分类:
其他好文 时间:
2014-06-05 20:00:41
阅读次数:
365