Concurrent包常用方法简介】的更多相关文章

1 Executor接口 留给开发者自己实现的接口,一般情况下不需要再去实现.它只有一个方法 void execute(Runnable command) 2 ExecutorService接口 它继承自Executor接口,但多了如下3个功能 终止任务.体现在这几个方法 void shutdown() 线程池关闭,不接受新任务,即不能再执行submit(task),如果你硬要执行新任务则会抛异常. 还没运行完的任务继续运行完毕. List<Runnable> shutdownNow() 试图…
一.BlockingQueue概述 1.阻塞的含义 BlockingQueue即阻塞队列,从阻塞这个词可以看出,在某些情况下对阻塞队列的访问可能会造成阻塞.被阻塞的情况主要有如下两种: ,当一个线程对已经满了的阻塞队列进行入队操作时会阻塞,即线程会挂起直到队列不满时,线程才继续入队 当一个线程对一个空的阻塞队列进行出队操作时也会阻塞,即线程会挂起直到队列不空,线程才继续出队 2.为什么要使用BlockingQueue 多线程环境中,通过队列可以很容易实现数据共享,比如经典的“生产者”和“消费者”…
newFixedThreadPool 创建一个固定大小的线程池. shutdown():用于关闭启动线程,如果不调用该语句,jvm不会关闭. awaitTermination():用于等待子线程结束,再继续执行下面的代码.该例中我设置一直等着子线程结束. Java代码 收藏代码 public class Test { public static void main(String[] args) throws IOException, InterruptedException { Executor…
Java集合大致可分为Set.List和Map三种体系,其中Set代表无序.不可重复的集合:List代表有序.重复的集合:而Map则代表具有映射关系的集合.Java 5之后,增加了Queue体系集合,代表一种队列集合实现. JDK1.5版本中,加入java.uill.concurrent包,其中包含集合的线程安全方式的实现.本文仅探讨concurrent包下面的Collection接口实现. 目录 1. concurrent包下面Collection子接口.类框架图2. CopyOnWriteA…
------------------------------------------java util 下的concurrent包--------并发包--------------------.java.util.concurrent他下面的接口摘要:    1.ThreadFactory    2.RunnableFuture<V>    3.Executor    4.ExecutorService    5.ConcurrentMap<K,V>    6.BlockingQu…
在JavaSE5中,JUC(java.util.concurrent)包出现了 在java.util.concurrent包及其子包中,有了很多好玩的新东西: 1.执行器的概念和线程池的实现.Executor.ExecutorService框架 从Executor接口开始,到ExecutorService,再到很多基于ThreadPoolExecutor实现的具体执行器.执行器实际上是采用了一种叫做命令模式的设计,将任务Runnable和具体执行线程相分离,并给出了生命周期等管理方法,一般只要e…
java concurrent包的学习(转) http://my.oschina.net/adwangxiao/blog/110188 我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完 成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便.而当针对高质量Java多线程并发程序设计时,为防 止死蹦等现象的出现,比如使用java之前的wait().notify()和synchronized等,每每需要考虑性能.死锁.公平性.…
  package com.java.utils; import java.util.Iterator; import java.util.Map;   import org.apache.commons.lang.ArrayUtils; import org.apache.commons.lang.ClassUtils; import org.apache.commons.lang.RandomStringUtils; import org.apache.commons.lang.String…
<java.util.concurrent 包源码阅读>系列文章已经全部写完了.开始的几篇文章是根据自己的读书笔记整理出来的(当时只阅读了部分的源代码),后面的大部分都是一边读源代码,一边写文章. 由于水平有限,在阅读源代码的时候,分析得也比较浅显,还有很多地方自己也没有研究明白,有的地方显得语焉不详,只能请各位多多见谅了. 后面会继续写一些关于Java并发编程的文章,希望各位多多指教. 这里整理了一个简单的目录,包含了本系列所有文章的链接: <java.util.concurrent…
Aomic数据类型有四种类型:AomicBoolean, AomicInteger, AomicLong, 和AomicReferrence(针对Object的)以及它们的数组类型, 还有一个特殊的AomicStampedReferrence,它不是AomicReferrence的子类,而是利用AomicReferrence实现的一个储存引用和Integer组的扩展类   首先,所有原子操作都是依赖于sun.misc.Unsafe这个类,这个类底层是由C++实现的,利用指针来实现数据操作   关…