并发编程
文章平均质量分 78
bryceforphy
大家好,我毕业于ZJU,现在是从事于互联网行业的码农一枚,平时对大数据、分布式系统等方面感兴趣,希望能够在这里与大家彼此交流,共同提高。追求知识的道路上,进一步有一步的欢喜。微博@不睡觉的时候会困,谢谢。
展开
-
java的ThreadPoolExecutor与BlockingQueue
本文介绍java中经常用到的ThreadPoolExecutor,并共同探讨学习其中用到的参数BlockingQueue。在介绍具体的实例之前,先来看看ThreadPoolExecutor在hbase中的应用。hbase中的HTable类用于客户端获得服务器上一个table的连接,其构造函数中会创建线程池,后续数据传输的连接都从该线程池中获取,这部分的源代码如下所示: public static原创 2016-08-28 17:23:17 · 1495 阅读 · 0 评论 -
JMM内存可见性与顺序一致性模型
首先让我们从as-if-serial语义讲起,程序执行时为提高性能,编译器和处理器常常会对指令做重排序,该语义是指不管怎么重排序,单线程程序的执行结果不能被改变。根据该语义存在数据依赖关系的操作不会发生重排序,因为这种重排序会改变程序的执行结果,部分存在控制依赖关系的操作可以做重排序。编译器和处理器中为了实现as-if-serial语义,定义了一系列的重排序规则,并通过内存屏障指令实现。 内存屏原创 2016-08-20 22:37:11 · 3387 阅读 · 0 评论