并发包总结

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了并发包总结相关的知识,希望对你有一定的参考价值。

并发包中引入了线程池,好处是:

可以制定灵活的运行策略,比如single的,保证一个一个运行,fixed的可以保证一次只运行一定数量的线程

线程池可以将线程关闭

线程池可以使线程之间进行通讯

锁的好处是:

有公平锁,可以实现先来的线程,先执行

通过lock(reentrantelock)和condition实现同步,在语义上很容易理解

有读写锁,实现缓冲池,保证读的时候,其他读和写都不能操作,大家都读的时候,可以并发读取,提高读的效率

samephore,控制同时访问资源的数量,哪个线程先acquire,哪个可以执行,执行完release掉,其他的空闲线程再抢

cyclicBarrier,路障,每个线程到达路障,都先等待,直到所有的线程都到达这里,再继续向下执行

countdownlatch,倒计时,等倒计时到0的时候,线程开始跑

1)main主线程中有一个倒计时器,1秒钟之后,倒计时器变成0    judge.countdown()

2)子线程在等judge.await(),直到变成0

3)子线程中谁执行完,谁倒计时减去1     sport.countdown()

 

 

 

4) sport信号灯变成0,主线程的judge.await()停止等待,开始执行。

 

以上是关于并发包总结的主要内容,如果未能解决你的问题,请参考以下文章

Java集合及Concurrent并发包总结

Java集合及concurrent并发包总结

Java并发包APIs总结

Java并发包源码分析

Java集合及concurrent并发包总结(转)

JAVA并发包之线程池ThreadPoolExecutor