摘要:1 使用http://www.javamex.com/中提供的classmexer.jar来计算对象的大小。 2 org.openjdk.jol.info.ClassLayout Shallow org.openjdk.jol.info.GraphicLayout retained 3 自写 htt
阅读全文
摘要:背景:sonar对volatile和synchronized不友好,项目背景:mybatis guice 事务代理切面 private ThreadLocal<Integer> getTrasactionStatus(project_DB_TRANSACTIONAL projectDbTransac
阅读全文
摘要:深入剖析ConcurrentHashMap(1)http://ifeve.com/java-concurrent-hashmap-1/http://ifeve.com/concurrenthashmap-weakly-consistent/总结:ConcurrentH...
阅读全文
摘要:http://www.importnew.com/28263.html原文出处: JavaDoop今天发一篇”水文”,可能很多读者都会表示不理解,不过我想把它作为并发序列文章中不可缺少的一块来介绍。本来以为花不了多少时间的,不过最终还是投入了挺多时间来完成这篇文章的。...
阅读全文
摘要:https://mp.weixin.qq.com/s?__biz=MzIwMzY1OTU1NQ==&mid=2247484057&idx=1&sn=c5fb63c68203001fa3a0545cef6c0e06&chksm=96cd42d5a1bacbc325759048d6149d49f8c91
阅读全文
摘要:参考:http://blog.csdn.net/silyvin/article/details/79482885http://blog.csdn.net/silyvin/article/details/79490605
阅读全文
摘要:生产者消费者问题【线程中ConcurrentLinkedQueue】http://blog.csdn.net/ItJavawfc/article/details/50423595项目需求:在顶层网络请求的地方捕获到项目中的每个网络请求的异常【生产】后需要将请求错误的日...
阅读全文
摘要:http://blog.csdn.net/javazejian/article/details/77410889深入剖析java并发之阻塞队列LinkedBlockingQueue与ArrayBlockingQueueLinkedBlockingQueue和Array...
阅读全文
摘要:BlockingQueue(阻塞队列)详解注意:该随笔内容完全引自http://wsmajunfeng.iteye.com/blog/1629354,写的很好,非常感谢,复制过来算是个积累,怕以后找不到。一. 前言 在新增的Concurrent包中,Blocking...
阅读全文
摘要:并发队列-无界非阻塞队列 ConcurrentLinkedQueue 原理探究http://www.importnew.com/25668.html一、 前言常用的并发队列有阻塞队列和非阻塞队列,前者使用锁实现,后者则使用CAS非阻塞算法实现,使用非阻塞队列一般性能比...
阅读全文
摘要:并发队列 – 无界阻塞队列 LinkedBlockingQueue 原理探究http://www.importnew.com/25583.html一、前言前面介绍了使用CAS实现的非阻塞队列ConcurrentLinkedQueue,下面就来介绍下使用独占锁实现的阻塞...
阅读全文
摘要:并发队列 – 有界阻塞队列 ArrayBlockingQueue 原理探究http://www.importnew.com/25566.html一、 前言上节介绍了无界链表方式的阻塞队列LinkedBlockingQueue,本节来研究下有界使用数组方式实现的阻塞队列...
阅读全文
摘要:1.CopyOnWrite 写少读多的场景 读-读 读-写 写-读 不阻塞 写-写阻塞 写时复制,为什么复制?为了迭代器等遍历读操作的安全与性能,同String set中看似比较多余的一句,背后的目的是什么,涉及到happens-before,多线程下volatile防止指令重排,确保可见性 数据读
阅读全文
摘要:转载自:http://ifeve.com/copyonwritearraylist-set/ http://ifeve.com/java-memory-model-4/ http://tech.meituan.com...
阅读全文
摘要:扩容可以理解,set为什么要复制?参考:CopyOnWriteArray的使用ArrayList 的一个线程安全的变体,其中所有可变操作(添加、设置,等等)都是通过对基础数组进行一次新的复制来实现的。 这一般需要很大的开销,但是当遍历操作的数量大大超过可变操作的数量时...
阅读全文
摘要:(一 mysql mvcc)有点像mysql的mvcc,给你个历史数据,我写的时候加锁,确保最终一致性读-快照读 写-当前读(二 ReadWriteLock)与jdk读写锁有一些区别jdk读写锁 读与写相互阻塞,仅读读不阻塞而这个读不阻塞写,写不阻塞读,仅写写阻塞...
阅读全文
摘要:http://wxl24life.iteye.com/blog/1746794先看一段代码:Java代码 public class Locale { private final static Map map = new HashMap(); pu...
阅读全文