每天进步一点点

每天进步一点点

CountDownLatch

CountDownLatch           可以用来在一个线程中等待多个线程完成任务的类;   通常的使用场景是,某个主线程接到一个任务,起了n个子线程去完成,但是主线程需要等待这n个子线程都完成任务了以后才开始执行某个操作     JDK: 一个同步辅助类,在完成一组其他线...

2012-05-29 15:12:10

阅读数 14

评论数 0

Semaphore 并发个数控制

  Semaphore可以控制某个资源可被同时访问的个数,acquire()获取一个许可,如果没有就等待,而release()释放一个许可。比如在Windows下可以设置共享文件的最大客户端访问个数。 另外重入锁ReentrantLock也可以实现该功能,但实现上代码也要复杂些。   ...

2012-05-24 16:03:45

阅读数 51

评论数 0

CyclicBarrier 公共屏障点

在实际应用中,有时候需要多个线程同时工作以完成同一件事情,而且在完成过程中,往往会等待其他线程都完成某一阶段后再执行,等所有线程都到达某一个阶段后再统一执行。 JDK: 一个同步辅助类,它允许一组线程互相等待,直到到达某个公共屏障点 (common barrier point)。在涉及一组...

2012-05-24 14:13:10

阅读数 8

评论数 0

使用CompletionService获取多线程返回值

  public interface CompletionService<V> { Future<V> submit(Callable<V&gt...

2012-05-24 12:30:25

阅读数 50

评论数 0

Future接口和FutureTask类【FutureTask实现了Runnable和Future接口】

API:   public interface Future<V> { /** * Attempts to cancel execution of this task. This attempt will ...

2012-05-23 18:44:10

阅读数 51

评论数 0

死锁案例

JAVA死锁与解决 死锁如何解决   互请不循 死锁产生的原因及四个必要条件 产生死锁的原因主要是: (1) 因为系统资源不足。 (2) 进程运行推进的顺序不合适。 (3) 资源分配不当等。 如果系统资源充足,进程的资源请求都能够得到满足,死锁出现的可能性就很低,否则 就会...

2012-05-23 11:01:57

阅读数 8

评论数 0

HashSet

  Set 是不包含重复元素的集合。可以更加正式地表达为,在 set 里面的元素 e1,e2, 不允许 e1.equals(e2), 而且最多有一个 null 元素。 Set 的主要方法如下,可以看出 List 和 Set 在方法上的区别了, List 能够根据类似于 index ,来找到元素...

2012-05-23 10:23:00

阅读数 6

评论数 0

UNION 和UNION ALL 的区别

  在数据库中,UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同  UNION在进行表链接后会筛选掉重复的记录,所以在表链接后会对所产生的结果集进行排序运算,删除重复的记录再返回结果    实际大部分应用中是不会产生重复的记录,最常见...

2012-05-22 18:12:56

阅读数 6

评论数 0

Arraylist与Vector

ArrayList / Vector         Object[] elementData             默认容量10            Object[]  Arrays.copyOf(Object[] original, int newLength)      ...

2012-05-22 15:26:42

阅读数 6

评论数 0

event.srcElement

JS 中e.target问题     event.srcElement.id  event.srcElement.tagname  event.srcElement.type  event.srcElement.value  event.srcElement.name  even...

2012-05-18 16:03:50

阅读数 14

评论数 0

LinkedHashMap

  HashMap:         put -> addEntry(新建一个Entry)         get         getEntry   LinkedHashMap:        put -> addEntry(重...

2012-05-10 17:35:29

阅读数 12

评论数 0

volatile关键字

Java 内存模型 2.1 Java 内存模型的基本原理 Java 内存模型,由于 Java 被设计为跨平台的语言,在内存管理上,显然也要有一个统一的 模型。系统存在一个主内存 (Main Memory) , Java 中所有变量都储存在主存中,对于所有线程都是共享的。每条线程都有自己的工...

2012-05-10 10:44:35

阅读数 7

评论数 0

AOP

引子: AOP(面向方面编程:Aspect Oriented Programing)和IoC一样是Spring容器的内核,声明式事务的功能在此基础上开花结果。但是AOP和OOP差别较大,要很好地理解这个概念,做到心领神会还是不容易的,不过相信看完帖子,你就不再迷惑了。  编程语言最终极的目标就是能...

2012-05-09 10:14:42

阅读数 9

评论数 0

IOC

引述:IoC(控制反转:Inverse of Control)是Spring容器的内核,AOP、声明式事务等功能在此基础上开花结果。但是IoC这个重要的概念却比较晦涩隐讳,不容易让人望文生义,这不能不说是一大遗憾。不过IoC确实包括很多内涵,它涉及代码解耦、设计模式、代码优化等问题的考量,我们打算...

2012-05-09 10:11:01

阅读数 12

评论数 0

ConcurrentHashMap的锁分离技术

    concurrenthashmap是一个非常好的map实现,在高并发操作的场景下会有非常好的效率。实现的目的主要是为了避免同步操作时对整个map对象进行锁定从而提高并发访问能力。   ConcurrentHashMap 类中包含两个静态内部类 HashEntry 和 ...

2012-05-07 16:10:06

阅读数 85

评论数 0

显示结果排序

<td width="9%" style="text-align: center;cursor:hand;" onclick="doSorting('airlineCode');&...

2012-05-04 14:15:23

阅读数 18

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭