Concurrent.util工具类详细讲解和使用

2018-03-15  本文已影响0人  WinnXUDONG

Concurrent.util常用类

1. CyclicBarrier使用:

假设有一个场景:每个线程代表一个跑步运动员,当运动员都准备好后,才一起出发,只要有一个没有准备好,大家都等待。(github

2. CountDownLacth使用:

他经常用于监听某些初始化操作,等初始化执行完毕后,通知主线程继续工作。(github

3. Callable和Future使用:

Callable与Runable相比有返回值。这个例子其实就是实现Future模式。jdk给与我们一个实现的封装,使用非常简单。(github

Future模式非常合适在处理很耗时很长的业务逻辑时进行使用,可以有效的减小系统的响应时间,提高系统的吞吐量。

4. Semaphore信号量:

Semaphore可以控制系统的流量:
拿到信号量的线程可以进入,否则等待。通过acquire()和release()获取和释放许可。(github

上一篇下一篇

猜你喜欢

热点阅读