浏览 4035 次
锁定老帖子 主题:java内存的划分与管理???
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-04-18
最后修改:2010-04-19
1.java的划分是怎样的?或者划分为哪几块?除了堆,栈,寄存器还有什么?? 例如: java的变量(成员变量,临时变量,形参)是放在哪里? java的方法(本地方法和远程方法)是放在哪里? java基本数据类型的变量,String变量,new出来的变量和引用变量是放在哪里? java的static是放在哪里? java的常量是放在哪里? java的固定对象与临时对象是如何区别,他们的内存是如何区分? java的gc是显示使用还是让jvm自动调用? 对于jvm,有没有优化功能?比如 -Xms -Xmx 应如何指定呢? 希望知道的高手和大牛人能帮偶这类菜鸟详细的指点下(最好图文一起那就更好了),先谢谢哦。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-04-18
你真想知道就去看书
先去看接口,再去看编译原理,再看有关JVM的书 通天节径是没有的 |
|
返回顶楼 | |
发表时间:2007-08-25
抛出异常的爱 写道 你真想知道就去看书
先去看接口,再去看编译原理,再看有关JVM的书 通天节径是没有的 那要论坛干什么? |
|
返回顶楼 | |
发表时间:2007-08-25
saturn 写道: 本人在学学习java时,常出现的疑惑? 1.java的划分是怎样的?或者划分为哪几块?除了堆,栈,寄存器还有什么?? 例如:java的变量(成员变量,临时变量,形参)是放在哪里? java的方法(本地方法和远程方法)是放在哪里? java基本数据类型的变量,string变量,new出来的变量和引用变量是放在哪里? java的static是放在哪里? java的常量是放在哪里? java的固定对象与临时对象是如何区别,他们的内存是如何区分? java的gc是显示使用还是让jvm自动调用? 对于jvm,有没有优化功能?比如 -Xms -Xmx 应如何指定呢? 希望知道的高手和大牛人能帮偶这类菜鸟详细的指点下(最好图文一起那就更好了),先谢谢哦。 这些问题高手不是信手拿来的么?为什么没人来回答呢? 能提出这些问题的人本身水平就不差了呀! 为什么没人来讨论呢? 我了解如下: JVM内存管理分成三个部分,young,old,permanent string是static的,但保存在堆里,栈里保存引用,如果String s = "str",那么先去查看有没有str这个String,因为String都是static的,可以全局共享,如果找不到就就调用new String("str"); 所有加载,新创建的对象都保存在young区,如果young区满了就调用第二个GC,把对象移到old区。 gc 是JVM自动调用,也可以显示定义,但runtime.gc与system.gc的区别不知道... -Xms指定最小堆内存,-Xmx指定最大堆内存,WEB应用建议-Xms=-Xmx -Xss指定栈的内存,一般没必要指定。因为单个进程的栈内存一般限制在1M -xmn指定yong区的内存,一般为-Xmx的1/2,大内存比重可以加大点 |
|
返回顶楼 | |
发表时间:2007-08-25
JAVA编程思想里面讲了一些,不过没有你要的全部,感觉这些应该看看JVM实现原理啊
|
|
返回顶楼 | |