1、Java内存模型 Java虚拟机在执行程序时把它管理的内存分为若干数据区域,这些数据区域分布情况如下图所示: 程序计数器:一块较小内存区域,指向当前所执行的字节码。如果线程正在执行一个Java方法,这个计数器记录正在执行的虚拟机字节码指令的地址,如果执行的是Native方法,这个计算器值为空。 ...
分类:
编程语言 时间:
2016-05-14 23:03:32
阅读次数:
227
一、主要内容 内聚 是基于动机的 凡是与业务有关的都需要内聚 经过内聚,代码的可重用性、健壮性、维护性更强 外界发生变化时,内部是不会改变的。 耦合 与采取的机制有关,有以下几种: 内容耦合:一个模块直接执行了另一个模块的代码 全局耦合:两个模块同时操作一块内存区域 外部耦合:两个模块共享了外部模块... ...
分类:
其他好文 时间:
2016-05-13 20:37:36
阅读次数:
170
在我们的操作系统中,已经存在的3个进程是运行在ring1上的,它们已经不能任意地使用某些指令,不能访问某些权限更高的内存区域,但如果一项任务需要这些使用指令或者内存区域时,只能通过系统调用来实现,它是应用程序和操作系统之间的桥梁。 所以,一件事情就可能是应用程序做一部分,操作系统做一部分。这样,问题 ...
分类:
其他好文 时间:
2016-05-13 20:26:09
阅读次数:
127
Java内存区域和GC机制一、目录 1.Java垃圾回收概括 2.Java内存区域 3.Java对象的访问方式 4.Java内存访问机制 5.Java GC 机制 6.Java垃圾收集器 二、Java垃圾回收概括 1.Java GC 介绍: a) Garbage Collection 垃圾收集、垃圾 ...
分类:
编程语言 时间:
2016-05-13 20:23:26
阅读次数:
255
strlenstrlen所作的仅仅是一个计数器的工作,它从内存的某个位置(可以是字符串开头,中间某个位置,甚至是某个不确定的内存区域)开始扫描,直到碰到第一个字符串结束符'\0'为止,然后返回计数器值(长度不包含'\0')。指实际字符串或字符数组的实际长度(不是所占空间的字节数)。函数原型exter ...
分类:
编程语言 时间:
2016-05-13 14:32:25
阅读次数:
123
目录 Java垃圾回收概况 Java GC(Garbage Collection,垃圾收集,垃圾回收)机制,是Java与C++/C的主要区别之一,作为Java开发者,一般不需要专门编写内存回收和垃圾清理代 码,对内存泄露和溢出的问题,也不需要像C程序员那样战战兢兢。这是因为在Java虚拟机中,存在自 ...
分类:
编程语言 时间:
2016-05-13 07:44:13
阅读次数:
260
memchrexternvoid*memchr(constvoid*buf,intch,size_tcount);功能:从buf所指内存区域的前count个字节查找字符ch。说明:当第一次遇到字符ch时停止查找。如果成功,返回指向字符ch的指针;否则返回NULL。memrchr和上面类似只不过是返回ch的结尾。和strchr类似,但是最好选用mem..
分类:
其他好文 时间:
2016-05-13 04:50:10
阅读次数:
2136
JVM内存由几个部分组成:堆、方法区、栈、程序计数器、本地方法栈
JVM垃圾回收仅针对公共内存区域,即:堆和方法区进行,因为只有这两个区域在运行时才能知道需要创建些对象,其内存分配和回收都是动态的。
一、垃圾回收策略
1.1分代管理
将堆和方法区按照对象不同年龄进行分代:
(Young Generation and Old Gene...
分类:
编程语言 时间:
2016-05-12 21:51:40
阅读次数:
256
finalize()用途何在五步看懂:我们都了解初始化的重要性,当常常会忘记同样也重要的清理工作。在Java中有垃圾回收器负责(GC)回收无用的对象占据的内存资源。但是也有特殊情况:假定你的对象(并非使用new)获得一块“特殊”的内存区域。为了处理这种情况,Java允许在类中定义一个名为finalize()的方法。它的工作原理“假定”是这样的:一旦垃圾回收期准备好释放对象占用的存储空间,将首先调用f...
分类:
移动开发 时间:
2016-05-12 19:04:53
阅读次数:
134
1 前面已经有了分段的概念,那么为什么 有分页的出现呢?
这是为了提高内存分区导致的内存效率问题,在程序转载到内存的时候,我们知道程序是分段载入的,通过内存分区来装载不同的段。那么如果有下面问题,我现在需要请求的空间为160k,而我的总空闲空间是大于160k的,但是没有一个空闲分区大于160k,那么按照分区的管理,就无法利用这总共的内存区域,而内存中的空闲区域也就变成了内存碎片,为了解决这个问题...
分类:
其他好文 时间:
2016-05-12 18:36:12
阅读次数:
126