04 2017 档案
摘要:CAS(Compare and swap)比较和替换是设计并发算法时用到的一种技术。简单来说,比较和替换是使用一个期望值和一个变量的当前值进行比较,如果当前变量的值与我们期望的值相等,就使用一个新值替换当前变量的值。这听起来可能有一点复杂但是实际上你理解之后发现很简单,接下来,让我们跟深入的了解一下
阅读全文
摘要:单例模式 Java内存模型的抽象示意图: 所有单例模式都有一个共性,那就是这个类没有自己的状态。也就是说无论这个类有多少个实例,都是一样的;然后除此者外更重要的是,这个类如果有两个或两个以上的实例的话程序会产生错误。 出于性能考虑,采用 相对于普通的单例和加锁模式而言,从性能和线程安全上来说都有很大
阅读全文
摘要:如: public class SingleTest implements Serializable{private static final long serialVersionUID = -8600246627673134435L;private static class SingleTestH
阅读全文
摘要:前言 CMS,全称Concurrent Low Pause Collector,是jdk1.4后期版本开始引入的新gc算法,在jdk5和jdk6中得到了进一步改进,它的主要适合场景是对响应时间的重要性需求 大于对吞吐量的要求,能够承受垃圾回收线程和应用线程共享处理器资源,并且应用中存在比较多的长生命
阅读全文
摘要:查看JVM统计信息 S0、S1 代表两个Survivor区的占比; E 代表 Eden 区占比; O(Old)代表老年代占比; P(Permanent)代表永久代占比; YGC(Young GC)代表Minor GC次数; YGCT代表Minor GC耗时; FGC(Full GC)代表Full G
阅读全文
摘要:mysql deadlock found when trying to get lock 问题排查 1 获 取锁等待情况 可以通过检查 table_locks_waited和table_locks_immediate状态变量来分析系统上的表锁定争夺: 2 可以通过检查 Innodb_row_lock
阅读全文