码迷,mamicode.com
首页 >  
搜索关键字:concurrent    ( 2237个结果
《java.util.concurrent 包源码阅读》09 线程池系列之介绍篇
concurrent包中Executor接口的主要类的关系图如下:Executor接口非常单一,就是执行一个Runnable的命令。public interface Executor { void execute(Runnable command);}ExecutorService接口扩展了E...
分类:编程语言   时间:2014-08-13 17:44:56    阅读次数:220
2.原子--深入浅出java原子操作
从相对简单的Atomic入手(java.util.concurrent是基于Queue的并发包,而Queue,很多情况下使用到了Atomic操作,因此首先从这里开始)。很多情况下我们只是需要一个简单的、高效的、线程安全的递增递减方案。注意,这里有三个条件:简单,意味着程序员尽可能少的操作底层或者实现起来要比较容易;高效意味着耗用资源要少,程序处理速度要快;线程安全也非常重要,这个在多线程下能保证数...
分类:编程语言   时间:2014-08-13 13:12:56    阅读次数:429
AtomicReference 和 volatile 的区别
首先volatile是java中关键字用于修饰变量,AtomicReference是并发包java.util.concurrent.atomic下的类。首先volatile作用,当一个变量被定义为volatile之后,看做“程度较轻的 synchronized”,具备两个特性:1.保证此变量对所有线...
分类:其他好文   时间:2014-08-13 10:11:35    阅读次数:255
《java.util.concurrent 包源码阅读》08 CopyOnWriteArrayList和CopyOnWriteArraySet
CopyOnWriteArrayList和CopyOnWriteArraySet从数据结构类型上来说是类似的,都是用数组实现的保存一组数据的数据结构,区别也简单就是List和set的区别。因此这里就先讨论CopyOnWriteArrayList,然后再说CopyOnWriteArraySet。这里重...
分类:编程语言   时间:2014-08-12 16:29:14    阅读次数:197
GCD线程
1.Serial Dispatch Queue 串行队列,每次只能执行一个线程,线程采用先进先出的执行顺序。各个队列之间并行处理,也即每个队列对应一个系统线程,所以要注意不能过多生成Serial Dispatch Queue。2.Concurrent Dispatch Queue 并行队列,由X.....
分类:编程语言   时间:2014-08-12 16:25:24    阅读次数:261
HBase中MVCC的实现机制及应用情况
MVCC(Multi-Version Concurrent Control),即多版本并发控制协议,广泛使用于数据库系统。本文将介绍HBase中对于MVCC的实现及应用情况。
分类:Web程序   时间:2014-08-12 16:08:24    阅读次数:311
并行编程框架 ForkJoin
本文假设您已经了解一般并行编程知识,了解Java concurrent部分如ExecutorService等相关内容。 虽说是Java的ForkJoin并行框架,但不要太在意Java,其中的思想在其它语言环境也是同样适用的。因为并发编程在本质上是一样的。就好像如何找到优秀的Ruby程序员?其实要找的只是一个优秀的程序员。当然,如果语言层面直接支持相关的语义会更好。   引言 ...
分类:其他好文   时间:2014-08-12 13:46:34    阅读次数:332
java笔记--使用线程池优化多线程编程
使用线程池优化多线程编程认识线程池在Java中,所有的对象都是需要通过new操作符来创建的,如果创建大量短生命周期的对象,将会使得整个程序的性能非常的低下。这种时候就需要用到了池的技术,比如数据库连接池,线程池等。在java1.5之后,java自带了线程池,在util包下新增了concurrent包...
分类:编程语言   时间:2014-08-12 00:07:43    阅读次数:251
三步创建Disruptor应用
Disruptor是一个高性能的用于线程间消息处理的开源框架。它的目标就是快.我们知道,java.util.concurrent.ArrayBlockingQueue 是一个非常优秀的有界队列实现。Disruptor与之相比,性能更加的优秀。性能比较完整的性能报告在这里.Disruptor内部使用了...
分类:其他好文   时间:2014-08-11 23:52:33    阅读次数:322
《java.util.concurrent 包源码阅读》07 LinkedBlockingQueue
这篇文章来说说稍微复杂一些的LinkedBlockingQueue。LinkedBlockingQueue使用一个链表来实现,会有一个head和tail分别指向队列的开始和队列的结尾。因此LinkedBlockingQueue会有两把锁,分别控制这两个元素,这样在添加元素和拿走元素的时候就不会有锁的...
分类:数据库   时间:2014-08-11 14:54:02    阅读次数:258
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!