2018年10月25日

Java并发编程:Timer和TimerTask(转载)

摘要: 下面内容转载自: http://blog.csdn.net/xieyuooo/article/details/8607220 其实就Timer来讲就是一个调度器,而TimerTask呢只是一个实现了run方法的一个类,而具体的TimerTask需要由你自己来实现,例如这样: Timer timer 阅读全文

posted @ 2018-10-25 14:29 diaobiyong 阅读(127) 评论(0) 推荐(0)

Java并发编程:Callable、Future和FutureTask

摘要: 在前面的文章中我们讲述了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。 而自从Java 1.5开 阅读全文

posted @ 2018-10-25 14:15 diaobiyong 阅读(109) 评论(0) 推荐(0)

Java并发编程:CountDownLatch、CyclicBarrier和Semaphore

摘要: 在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。 以下是本文目录大纲: 一.CountDownLatch用法 二.CyclicBarrier用法 三.Se 阅读全文

posted @ 2018-10-25 11:21 diaobiyong 阅读(178) 评论(0) 推荐(0)

Java并发编程:线程池的使用

摘要: 在前面的文章中,我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题: 如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。 那么有没有一种办法使得线程可以复用,就是执行完一个任务 阅读全文

posted @ 2018-10-25 10:42 diaobiyong 阅读(149) 评论(0) 推荐(0)

Java并发编程:阻塞队列

摘要: 在前面几篇文章中,我们讨论了同步容器(Hashtable、Vector),也讨论了并发容器(ConcurrentHashMap、CopyOnWriteArrayList),这些工具都为我们编写多线程程序提供了很大的方便。今天我们来讨论另外一类容器:阻塞队列。 在前面我们接触的队列都是非阻塞队列,比如 阅读全文

posted @ 2018-10-25 09:12 diaobiyong 阅读(145) 评论(0) 推荐(0)

2018年10月24日

Java并发编程:并发容器之CopyOnWriteArrayList(转载)

摘要: 原文链接: http://ifeve.com/java-copy-on-write/ Copy-On-Write简称COW,是一种用于程序设计中的优化策略。其基本思路是,从一开始大家都在共享同一个内容,当某个人想要修改这个内容的时候,才会真正把内容Copy出去形成一个新的内容然后再改,这是一种延时懒 阅读全文

posted @ 2018-10-24 16:34 diaobiyong 阅读(113) 评论(0) 推荐(0)

Java并发编程:并发容器之ConcurrentHashMap(转载)

摘要: 下面这部分内容转载自: http://www.haogongju.net/art/2350374 JDK5中添加了新的concurrent包,相对同步容器而言,并发容器通过一些机制改进了并发性能。因为同步容器将所有对容器状态的访问都 串行化了,这样保证了线程的安全性,所以这种方法的代价就是严重降低了 阅读全文

posted @ 2018-10-24 15:56 diaobiyong 阅读(198) 评论(0) 推荐(0)

Java ConcurrentModificationException异常原因和解决方法

摘要: 在前面一篇文章中提到,对Vector、ArrayList在迭代的时候如果同时对其进行修改就会抛出java.util.ConcurrentModificationException异常。下面我们就来讨论以下这个异常出现的原因以及解决办法。 以下是本文目录大纲: 一.ConcurrentModifica 阅读全文

posted @ 2018-10-24 15:03 diaobiyong 阅读(170) 评论(0) 推荐(0)

Java并发编程:同步容器

摘要: 为了方便编写出线程安全的程序,Java里面提供了一些线程安全类和并发工具,比如:同步容器、并发容器、阻塞队列、Synchronizer(比如CountDownLatch)。今天我们就来讨论下同步容器。 以下是本文的目录大纲: 一.为什么会出现同步容器? 二.Java中的同步容器类 三.同步容器的缺陷 阅读全文

posted @ 2018-10-24 14:57 diaobiyong 阅读(104) 评论(0) 推荐(0)

Java并发编程:深入剖析ThreadLocal

摘要: 想必很多朋友对ThreadLocal并不陌生,今天我们就来一起探讨下ThreadLocal的使用方法和实现原理。首先,本文先谈一下对ThreadLocal的理解,然后根据ThreadLocal类的源码分析了其实现原理和使用需要注意的地方,最后给出了两个应用场景。 以下是本文目录大纲: 一.对Thre 阅读全文

posted @ 2018-10-24 14:34 diaobiyong 阅读(163) 评论(0) 推荐(0)

导航