Java 7之多线程

来源:互联网 发布:excel单元格数据保护 编辑:程序博客网 时间:2024/05/01 17:54
  • Java 7之多线程线程池 - Callable和Future

    Callable接口代表一段可以调用并返回结果的代码;Future接口表示异步任务,是还没有完成的任务给出的未来结果。所以说Callable用于产生结果,Future用于获取结果。     Java...

    2014-02-16 18:55 
    9647
  • Java 7之多线程线程池 - 线程池原理(2)

    来看一下构造函数,如下: public ThreadPoolExecutor(int corePoolSize, int maximumPool...

    2014-02-16 11:26 
    4546
  • Java 7之多线程线程池 - 线程池原理(1)

    线程池能够复用线程,减少线程创建,销毁,恢复等状态切换的开销,提高程序的性能。一个线程池管理了一组工作线程,同时它还包括了一个用于放置等待执行的任务的队列。 java.util.concurrent...

    2014-02-15 16:30 
    14780
  • Java 7之多线程并发容器 - LinkedBlockingQueue

    LinkedBlockingQueue是一个单向链表实现的阻塞队列。该队列按 FIFO(先进先出)排序元素,新元素插入到队列的尾部,并且队列获取操作会获得位于队列头部的元素。链接队列的吞吐量通常要高于...

    2014-02-15 15:50 
    5336
  • Java 7之多线程并发容器 - ArrayBlockingQueue

    Java中有些多线程编程模式在很大程序上都依赖于Queue实现的线程安全性,所以非常有必要认识,首先来看一下接口定义,如下: public interface Queue extends Collec...

    2014-02-15 14:03 
    2609
  • Java 7之多线程并发容器 - ConcurrentHashMap

    与HashMap一样,ConcurrentHashMap也是一个基于散列的Map,但是它使用了锁分段的技术来提供更高的并发性和伸缩性。 锁分段就是进一步对一组独立的对象进行分解。例如,在Concurr...

    2014-02-15 08:38 
    2511
  • Java 7之多线程并发容器 - CopyOnWriteArrayList

    CopyOnWriteArrayList相当于线程安全的ArrayList,通过增加写时复制语义来实现线程安全性。底层也是通过一个可变数组来实现的。但是和ArrayList不同的时,它具有以下特性: ...

    2014-02-14 20:39 
    3285
  • Java 7之多线程 - 线程的取消与关闭

    Java没有一种安全的抢占式方法来停止线程,只有一些协作式机制。其中一种协作机制能设置某个“已请求取消”标志,而任务将定期查看该标志。如果设置了这个标志,那么任务将提前结束。举例如下: public ...

    2014-02-14 18:14 
    1425
  • Java 7之多线程第12篇 - CountDownLatch

    CountDownLatch是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 来看一下这个类的构造方法,如下: public CountDownLatch(i...

    2014-02-14 09:37 
    1662
  • Java 7之多线程第11篇 - 读写锁

    ReadWriteLock是ReentrantReadWriteLock的接口,而ReentrantReadWriteLock实现类中包括子类ReadLock和WriteLock。 首先来看一下Rea...

    2014-02-14 08:02 
    1901
  • Java 7之多线程第10篇 - Semaphore

    Semaphore用于保存当前可用许可的数量。是通过共享锁实现的。根据共享锁的获取原则,Semaphore分为"公平信号量"和"非公平信号量"。 "公平信号量"和"非公平信号量"的释放信号量的机制是一...

    2014-02-13 19:45 
    1762
  • Java 7之多线程第9篇 - 显式的Condition对象

    Condition接口中定义的方法如下所示: public interface Condition { // 造成当前线程在接到信号或被中断之前一直处于等待状态。 void await(); /...

    2014-02-13 16:36 
    1519
  • Java 7之多线程第8篇 - 互斥锁 ReentrantLock

    ReentrantLock是一个可重入的互斥锁,又被称为“独占锁”。也就是说ReentrantLock在同一个时间点只能被一个线程获取。 Java的synchronized块并不保证尝试进入它们的线程...

    2014-02-13 14:59 
    2387
  • Java 7之多线程第7篇 - 线程锁基础

    Java并发包中的核心是并发同步器AQS(AbstractQueuedSynchronizer) 首先要介绍一下java.util.concurrent.locks包下的LockSupport类。

    2014-02-04 18:57 
    2935
  • Java 7之多线程第5篇 - 原子类

    在java.util.concurrent包里包含的主要就是一些与并发实现相关的类,首先来看一下最为基础的原子类(java.util.concurrent.atomic)和和线程锁(java.utl....

    2014-02-03 09:50 
    2976
  • Java 7之多线程第3篇 - 笔试、面试常见线程问题

    笔试/面试中常见的多线程题目汇总

    2013-11-24 20:34 
    2039
  • Java 7之多线程第2篇 - 实现线程同步

    来看一道题目: public class A{ // 定义该类的静态Field public static int a = 6; } public class ATest1{ public s...

    2013-11-24 16:34 
    2397
  • Java 7之多线程第1篇 - 基础API介绍

    一个程序只有一个进程,而一个进程可以包含多个线程,所以进程只能是并发,而线程可以并行。 进程是操作系统中资源分配的基本单位,同一进程的线程间可以共享所属进程的资源,在运行期间,线程才是操作系统的调度和...

    2013-11-23 21:11 
    3247
0 0