首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

java调优收拾-堆和栈的相关知识

2012-09-10 
java调优整理--堆和栈的相关知识栈用来表示程序的运行处理逻辑,而堆用来存储数据。java中每个线程都有一个

java调优整理--堆和栈的相关知识

栈用来表示程序的运行处理逻辑,而堆用来存储数据。

java中每个线程都有一个独立于其他线程的线程栈,每个线程栈代表了不同的处理逻辑。线程栈大小一般为1M,可根据-Xss参数调整。

堆是程序存储数据(对象)的地方,堆中的数据是共享的,这样的设计一方面便于线程间交互,另一方面堆可以存储一些公共的常量、对象及缓存,节省内存。

java的数据类型可以分为基本类型和引用类型。基本类型因为大小固定,且长度均在1-8个字节,因此存储在栈中。 对象存储在堆中,对象的引用存储在栈中。

?

java线程栈的大小可以通过-Xss设置,当栈中存储数据比较多时,可适当调大线程栈。java.lang.StackOverflowError异常指示的就是线程栈满了。一般出现这个异常的原因与递归有关。

热点排行