2016年7月29日

Java 线程池

摘要: From:http://www.cnblogs.com/dolphin0520/p/3932921.html 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是 阅读全文

posted @ 2016-07-29 14:55 alvin.zhang 阅读(141) 评论(0) 推荐(0) 编辑

JMM 指令重排 - 并发现象探究

摘要: From:http://blog.csdn.net/yxc135/article/details/17720327 我们在平时所习惯的单线程编程中默认了一种乐观的模型——串行一致性。即在程序中只存在唯一的操作执行顺序,并且在每次读取变量时,都能获得在执行序列(任何处理器)最近一次写入该变量的值。但在 阅读全文

posted @ 2016-07-29 14:10 alvin.zhang 阅读(424) 评论(0) 推荐(0) 编辑

C 字节对齐

摘要: From:http://blog.csdn.net/21aspnet/article/details/6729724/ 文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。 一、概念 对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做 阅读全文

posted @ 2016-07-29 13:58 alvin.zhang 阅读(92) 评论(0) 推荐(0) 编辑

2016年7月28日

Java 阻塞队列

摘要: From:http://www.cnblogs.com/dolphin0520/p/3932906.html 在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编 阅读全文

posted @ 2016-07-28 16:17 alvin.zhang 阅读(125) 评论(0) 推荐(0) 编辑

Java 并发容器CopyOnWriteArrayList

摘要: From:http://www.cnblogs.com/dolphin0520/p/3938914.html Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容 阅读全文

posted @ 2016-07-28 15:47 alvin.zhang 阅读(115) 评论(0) 推荐(0) 编辑

Java 并发容器ConcurrentHashMap

摘要: From:http://www.cnblogs.com/dolphin0520/p/3932905.html 来源代码比较老旧,关注原理即可: 大家都知道HashMap是非线程安全的,Hashtable是线程安全的,但是由于Hashtable是采用synchronized进行同步,相当于所有线程进行 阅读全文

posted @ 2016-07-28 15:46 alvin.zhang 阅读(123) 评论(0) 推荐(0) 编辑

Java 并发容器

摘要: JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的访问都 串行化了,这样保证了线程的安全性,所以这种方法的代价就是严重降低了并发性,当多个线程竞争容器时,吞吐量严重降低。因此Java5.0开 始针对多线程并发访问设计,提供 阅读全文

posted @ 2016-07-28 15:44 alvin.zhang 阅读(130) 评论(0) 推荐(0) 编辑

Java 同步容器

摘要: From:http://www.cnblogs.com/dolphin0520/p/3933404.html 一.为什么会出现同步容器? 在Java的集合容器框架中,主要有四大类别:List、Set、Queue、Map。 List、Set、Queue接口分别继承了Collection接口,Map本身 阅读全文

posted @ 2016-07-28 10:49 alvin.zhang 阅读(130) 评论(0) 推荐(0) 编辑

Java ThreadLocal

摘要: From:http://www.cnblogs.com/dolphin0520/p/3920407.html 一.对ThreadLocal的理解 ThreadLocal,很多地方叫做线程本地变量,也有些地方叫做线程本地存储,其实意思差不多。可能很多朋友都知道ThreadLocal为变量在每个线程中都 阅读全文

posted @ 2016-07-28 10:38 alvin.zhang 阅读(121) 评论(0) 推荐(0) 编辑

2016年7月27日

Java volatile关键字

摘要: From:http://www.cnblogs.com/dolphin0520/p/3920373.html 一.内存模型的相关概念 大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入。由于程序运行过程中的临时数据是存放在主存(物理内存)当中的 阅读全文

posted @ 2016-07-27 19:52 alvin.zhang 阅读(102) 评论(0) 推荐(1) 编辑

导航