波神

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

随笔分类 -  java线程

java Concurrent包学习笔记(七):ConcurrentHashMap
摘要:(注意:以下讲解的ConcurrentHashMap是jdk 1.8的) 一、ConcurrentHashMap的数据结构 ConcurrentHashMap在1.8中的实现,相比于1.7的版本基本上全部都变掉了。 首先,取消了Segment分段锁的数据结构,取而代之的是数组+链表(红黑树)的结构。 阅读全文

posted @ 2019-01-02 13:49 波神 阅读(359) 评论(0) 推荐(0) 编辑

java Concurrent包学习笔记(六):Exchanger
摘要:一、概述 Exchanger 是一个用于线程间协作的工具类,Exchanger用于进行线程间的数据交换,它提供一个同步点,在这个同步点,两个线程可以交换彼此的数据。这两个线程通过exchange 方法交换数据,如果第一个线程先执行exchange 方法,它会一直等待第二个线程也执行exchange 阅读全文

posted @ 2018-12-29 09:48 波神 阅读(174) 评论(0) 推荐(0) 编辑

java Concurrent包学习笔记(五):Semaphore
摘要:一、Semaphore 是什么 信号量Semaphore是一个并发工具类,用来控制可同时并发的线程数,其内部维护了一组虚拟许可,构造函数初始化的时候可以指定许可的总数量 每次线程执行操作时先通过acquire方法获得许可,线程获得许可后Semaphore 的许可数量会减1,执行完毕再通过releas 阅读全文

posted @ 2018-12-28 12:13 波神 阅读(589) 评论(0) 推荐(0) 编辑

java Concurrent包学习笔记(一):ExecutorService
摘要:一、介绍 ExecutorService是java.util.concurrent包中的一个线程池实现接口。其有两个实现类: 1)ThreadPoolExecutor:普通线程池通过配置线程池大小,能有效管理线程的调度,在执行大量异步线程时提高程序的性能。 corePoolSize:核心线程数,如果 阅读全文

posted @ 2018-12-27 11:33 波神 阅读(2095) 评论(0) 推荐(1) 编辑

java Concurrent包学习笔记(三):ReentrantLock
摘要:一、可重入性的理解 从名字上理解,ReenTrantLock的字面意思就是再进入的锁,其实synchronized关键字所使用的锁也是可重入的,两者关于这个的区别不大。两者都是同一个线程每进入一次,锁的计数器都自增1,所以要等到锁的计数器下降为0时才能释放锁。 比如下面的代码片段:第一个lock没有 阅读全文

posted @ 2018-12-21 17:44 波神 阅读(203) 评论(0) 推荐(0) 编辑

java多线程同步(转)
摘要:原文地址:http://developer.51cto.com/art/201509/490965.htm 一、场景 因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。举 个例子,如果一个银行账户同时被两个线程操作 阅读全文

posted @ 2018-05-30 10:53 波神 阅读(257) 评论(0) 推荐(0) 编辑

java Concurrent包学习笔记(二):CountDownLatch和CyclicBarrier
摘要:一、CountDownLatch CountDownLatch一个线程同步的工具,是的一个或者多个线程等待其他线程操作完成之后再执行。 CountDownLatch通过一个给定的数值count来进行初始化,方法await()一直阻塞直到当前的count到达零为止,count的数值通过countDow 阅读全文

posted @ 2017-03-28 16:11 波神 阅读(197) 评论(0) 推荐(0) 编辑

java Concurrent包学习笔记(四):BlockingQueue
摘要:一、BlockingQueue概述 1、阻塞的含义 BlockingQueue即阻塞队列,从阻塞这个词可以看出,在某些情况下对阻塞队列的访问可能会造成阻塞。被阻塞的情况主要有如下两种: ,当一个线程对已经满了的阻塞队列进行入队操作时会阻塞,即线程会挂起直到队列不满时,线程才继续入队 当一个线程对一个 阅读全文

posted @ 2017-03-28 11:24 波神 阅读(414) 评论(0) 推荐(0) 编辑

java.util.concurrent
摘要:http://blog.csdn.net/defonds/article/details/44021605 阅读全文

posted @ 2017-03-28 08:57 波神 阅读(125) 评论(0) 推荐(0) 编辑

RunTime.getRunTime().addShutdownHook
摘要:原文地址:http://www.cnblogs.com/happySmily/p/5941739.html google了一下它的含义:在jvm中增加一个关闭的钩子,当jvm关闭的时候,会执行系统中已经设置的所有通过方法addShutdownHook添加的钩子,当系统执行完这些钩子后,jvm才会关闭 阅读全文

posted @ 2017-03-20 14:02 波神 阅读(452) 评论(0) 推荐(0) 编辑

彻底理解ThreadLocal(转)
摘要:ThreadLocal是什么 早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序。 当使用ThreadLocal维护变量时,ThreadLocal为每个使用该 阅读全文

posted @ 2016-09-21 16:16 波神 阅读(245) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示