![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
jvm
天空之城B哥
这个作者很懒,什么都没留下…
展开
-
jvm 内存
Java 内存划分:在Java内存分配中,java将内存分为:方法区,堆,虚拟机栈,本地方法栈,程序计数器。其中方法区和堆对于所有线程共享,而虚拟机栈和本地方法栈还有程序计数器对于线程隔离的。每个区域都有各自的创建和销毁时间。程序计数器:作用是当前线程所执行的字节吗的行号指示器。Java的多线程是通过线程轮流切换并分配处理器执行时间方式来实现的。因此,每个线程为了能在切转载 2015-03-20 10:56:57 · 357 阅读 · 0 评论 -
JVM系列三:JVM参数设置、分析
http://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.html不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备转载 2015-07-20 11:46:58 · 359 阅读 · 0 评论 -
一次JVM调优
在某应用的性能测试时,当并发增加一定程度TPS出现下降且波动很大,但系统并没有出现明显的资源使用瓶颈。查看GC日志发现5min内Full GC次数达到43次,平均FullGC时间为1s。 为了定位问题,增加-XX:+PrintTenuringDistribution参数输出对象age的大小分布 使用ParNew收集器时才会生效) ,同时使用VisualVM工具观察其垃转载 2015-07-20 11:44:50 · 718 阅读 · 0 评论 -
公平锁 轻量锁
非公平锁的获取流程,允许插队,直接尝试CAS操作,尝试失败时才执行入队。竞争激烈的环境中,非公平锁直接尝试锁定操作可以提高系统吞吐量。如果当前线程请求锁时,正好锁刚刚被释放,其他等待线程还没有被唤醒,在这过程中该线程完成了相关操作并释放锁,此时其他线程刚好被唤醒。利用线程唤醒的延时,其他线程能够完成操作,且不影响该阻塞线程唤醒后获取锁。 非公平锁在请求获取锁时,直接尝试CAS操转载 2015-08-01 19:59:40 · 709 阅读 · 0 评论 -
Java并发编程:volatile关键字解析
http://www.cnblogs.com/dolphin0520/p/3920373.htmlJava并发编程:volatile关键字解析 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字转载 2015-08-03 21:26:09 · 396 阅读 · 0 评论 -
对象的强、软、弱和虚引用
http://blog.csdn.net/coding_or_coded/article/details/6603549今天看代码,里面有一个类java.lang.ref.SoftReference把小弟弄神了,试想一下,接触java已经有3年了哇,连lang包下面的类都不了解,怎么混。后来在网上查资料,感觉收获颇多,现记录如下。 对象的强、软、弱和虚引用在JD转载 2015-08-04 11:04:15 · 292 阅读 · 0 评论