8. Java中的并发工具类

2020-02-13  本文已影响0人  星冉子

CountDownLatch

作用:等待一个或多个线程执行完成;

使用:

CountDownLatch cdl = new CountDownLatch(3);

cdl.await();

CyclicBarrier

作用:同步屏障,让多个线程到达屏障点时被阻塞,直到最后一个线程到达时才继续运行;

和CountDownLatch区别:功能更强大,可以重置计数器;

使用:

CyclicBarrier cb = new CyclicBarrier(3);

cdl.await();

Samaphore

作用:控制并发访问资源的线程数量,通过acquire阻塞获取许可证,release释放许可证;

使用:

Samaphore s = new Samaphore(3);

s.aquire();   s.release();

Exchanger

作用:用于线程间交换数据,一个线程执行exchange方法,会一直等待另一个线程执行exchange方法从而交换两个线程的数据;

使用:

Exchanger<String> e = new Exchanger<String>();

e.exchange("xxx");

上一篇 下一篇

猜你喜欢

热点阅读