jvm线程的stack

今天知道了一个线程创建时会给stack分配1M内存(而且是jvm之外的native内存,看Thread的源码,都是native调用),据说jdk1.4时代这个值是256k。

很恐怖的数据,呵呵,这个可以用jvm参数 -Xss1024来调节。

推算一下,这个stack设大了可能会造成OOM,设小了会使线程溢出。

 

另外,顺手记一下GC的四种模式,单线程,多线程并发,多线程低停顿,多线程递增低停顿。

当然还有更多,参考http://www.oracle.com/technetwork/java/faq-140837.html

 

想起来2年多前有台weblogic的GC很疯狂,束手无策。呵呵,现在总算比以前懂得多了点了。

 

[2010-10-24]有以下要点是JVM性能调优的核心立足点:

 

内存分布 YoungGen OldGen Perm survivor,newRatio,

-XX各项参数

GC策略 引用计数器,跟踪收集,标记清除,标记整理,

4种引用类型,强,软,弱,幻

Stack Dump

你可能感兴趣的:(jvm,多线程,thread,oracle,weblogic)