代码改变世界

随笔档案-2012年02月

堆和栈的区别

2012-02-29 09:20 by Batys, 203 阅读, 收藏,
摘要: 堆和栈的区别一、预备知识—程序的内存分配一个由c/C++编译的程序占用的内存分为以下几个部分1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。3、全局区(静态区(static)—,全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域, 未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。 - 程序结束后有系统释放 4、文字常量区—常量字符串就是放在 阅读全文

Java进阶:Java中堆和栈的区别

2012-02-29 08:59 by Batys, 342 阅读, 收藏,
摘要: 栈与堆都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。Java的堆是一个运行时数据区,类的对象从中分配空间。这些对象通过new、newarray、anewarray和multianewarray等指令建立,它们不需要程序代码来显式的释放。堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,因为它是在运行时动态分配内存的,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。栈的优势是,存取速度比堆要快,仅次于寄存器,栈数据可以共享。但缺点是,存在栈中的数 阅读全文

myeclipse10.0优化

2012-02-23 14:30 by Batys, 31803 阅读, 收藏,
摘要: 我用的是myeclipse10.0做的优化,早起版本8.5、8.5也都大同小异 一、Myeclipse10修改字体MyEclipse10是基于Eclipse3.7内核,但在Eclipse的Preferences-〉general-〉Appearance->Colors and Fonts 中并没有找到Courier New字体,它采用的是Consolas字体,中文看着非常小非常别扭,在Windows7下,系统自带虽然有Courier New字体,但是并没有激活显示,需要手动激活,才能在软件中使用激活方法如下:在win7的控制面板->字体,找到Courier New,右键,显示。 C 阅读全文

Pagefile.sys是什么文件? Pagefile.sys文件能删除吗?

2012-02-22 08:54 by Batys, 11048 阅读, 收藏,
摘要: pagefile.sys 定义:在安装过程中创建的虚拟内存页面文件(名为“pagefile.sys”) 特性:这个文件的大小是自己系统虚拟内存设置的最小值的大小。假如虚拟内存的设置为800MB-1600MB 那么你在自己的设定驱动盘下面就可看到大小为800MB的pagefile.sys文件 pagefile.sys如何删除? 网络上面采用了许多删除的办法,注册表,控制台 等等... 但是这个文件是由系统的操作产生的,只有关闭虚拟内存才能删除该文件。 通常自己可以在"我的电脑"右键"属性"-->"高级"-->"性能 阅读全文

myeclipse tomcat启动,内存溢出问题

2012-02-13 14:57 by Batys, 4521 阅读, 收藏,
摘要: 在 启动过程中出现 内存 溢出问题,抛出类似如下异常信息:java.lang.OutOfMemoryError: Java heap space可以尝试办法:A.修改Tomcat\bin\catalina.bat,添加如下内容set JAVA_OPTS=-Xms256m -Xmx512m -Djava.awt.headless=true [-XX:MaxPermSize=128M]B.eclipse->windows->preferences..->tomcat->jvm..->jvm文本框里,添加-Xms256m -Xmx512mC.eclipse->pr 阅读全文