VM 本地方法栈 程序计数器 栈区:push/pop 堆区:为线程共享,内放对象和数组, 方法区:为线程共享 线程:是进程内并发执行的代码段, 一个线程就是一栈,栈内压入的方法帧 绿色的共享的 dll(windows) so(linux) *.java > *.class --> ClassLoad ...
分类:
其他好文 时间:
2017-04-28 22:14:06
阅读次数:
299
单例:一个类仅仅有一个实例,在外部创建对象时,不能用alloc.(仅仅要alloc,就会在堆区开辟空间,就意味着有多个对象)所以我们要提供一个创建对象的方法: 1.加号方法 2.返回值类型为当前类 3.方法名以default ,standared,main,shared等开头 + 当前类名 以下以P ...
分类:
其他好文 时间:
2017-04-25 13:16:24
阅读次数:
152
内存: 堆区,栈区,常量区,计数区,代码区; 数据类型: 基本数据类型:整形,浮点型,布尔型 boolean 只能返回真假值,字符型; 引用数据类型:类,数组; 基本数据类型——》直接存放到栈区; 引用数据类型——》将引用放到栈区,将内容放到堆区; 全栈工程师:全都会,最牛逼; 数组声明: int ...
分类:
编程语言 时间:
2017-04-24 12:38:06
阅读次数:
226
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。 ...
分类:
其他好文 时间:
2017-04-21 16:44:03
阅读次数:
187
进程1、 进程与线程的区别:?调度的基本单位 ?是否可见 ?资源占有量,共享堆区 ?并发性 ?进程空间 ?通信 ?切换2、 操作系统的特点?并发 ?共享 ?异步 ?虚拟3、 线程:?线程ID ?寄存器组 ?线程的栈stack ?共享堆区heap 4、 通信方式:?消息队列 ?共享内存 ?socket... ...
分类:
其他好文 时间:
2017-04-18 09:21:32
阅读次数:
225
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。 ...
分类:
其他好文 时间:
2017-03-31 23:11:29
阅读次数:
187
篇幅较长预警 为了方便解释java内存机制,先从类的加载开始谈起 1、什么是类的加载 类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个java.lang.Class对象,用来封装类在方法区内的数据结构。类的加载的最终产品是位于堆区中的 ...
分类:
编程语言 时间:
2017-03-28 21:28:14
阅读次数:
222
#include<stdio.h> //内存四区:栈区(变量),堆区,全局区(数据),代码区//主函数的P1和子函数的p1完全不同//指针指向谁就把谁的地址赋给指针//指针变量 和 他所指向的内存空间是两个不同的概念char * getStr1(){ char *p1 = "abcdefg2"; r ...
分类:
其他好文 时间:
2017-03-27 11:08:27
阅读次数:
159
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。 ...
分类:
其他好文 时间:
2017-03-22 16:07:40
阅读次数:
191
C++内存管理:名称分配栈区函数内部局部变量的存储单元在栈区,函数执行结束时,这些存储单元被释放。效率高,但是分配的内存容量有限。堆区就是那些由new分配的内存块,他们的释放编译器不去管,由我们的应用程序去控制,一般一个new就要对应一个delete。如果程序员没有释放掉..
分类:
编程语言 时间:
2017-03-17 21:23:01
阅读次数:
173