随笔分类 -  并发

Java并发类库提供的线程池有哪几种?分别有什么特点?
摘要:通常开发者都是利用Executors提供的通用线程池创建方法,去创建不同配置的线程池,主要区别在于不同的 Executors目前提供了5种不同的线程池创建配置: 1、newCachedThreadPool(),它是用来处理大量短时间工作任务的线程池,具有几个鲜明特点:它会试图缓存线程并重用,当无缓存 阅读全文

posted @ 2018-08-16 17:07 Jed_SH 阅读(14713) 评论(0) 推荐(1)

Java线程:Callable和Future
摘要:接着上一篇继续并发包的学习,本篇说明的是Callable和Future,它俩很有意思的,一个产生结果,一个拿到结果。 Callable接口类似于Runnable,从名字就可以看出来了,但是Runnable不会返回结果,并且无法抛出返回结果的异常,而Callable功能更强大一些,被线程执行后,可以返 阅读全文

posted @ 2018-08-16 14:03 Jed_SH 阅读(131) 评论(0) 推荐(0)

ConcurrentLinkedQueue和LinkedBlockingQueue区别
摘要:Concurrent类型基于lock-free,在常见的多线程访问 下面这张图是Java并发类库提供的各种各样的线程安全队列实现,注意,图中并未将非线程安全部分包含进来。 LinkedBlockingDeque无非是用一个独占锁来保持线程安全,然后用Condition来做阻塞操作 Concurren 阅读全文

posted @ 2018-08-16 09:45 Jed_SH 阅读(4145) 评论(0) 推荐(0)

Java并发工具包提供了哪些并发工具类
摘要:通常我们所说的并发包也就是java.util.concurrent,集中了Java并发的各种工具类。 同步结构: CountDownLatch 允许一个或多个线程等待某些操作完成 CountDownLatch操作的是事件 CyclicBarrier 一种辅助性的同步结构,允许多个线程等待到大某个屏障 阅读全文

posted @ 2018-08-15 10:35 Jed_SH 阅读(2327) 评论(0) 推荐(0)