java中的并发工具类


类名称 类的简介 类的特点
CountDownLatch 允许一个或者多个线程等待其他线程完成之后再执行后续操作 CountDownLatch提供了一个计数器,只能初始化一次,但是提供了一个await方法,允许设置一个时间,当等待一段时间后,就会不再阻塞当前线程。
CyclicBarrier 让一组线程到达一个屏障时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏蔽的线程才会继续执行 CyclicBarrier计数器可以使用reset方法重置,所以CyclicBarrier能够处理更加复杂的场景,例如:如果计算发生错误,可以重置计数器,并让线程重新执行
Semaphore 用来控制同时访问特定资源的线程的数量 资源的数量需要预先指定
Exchanger 线程间协作的工具类,用于进行线程间的数据交换,它提供一个同步点,两个线程可以交换彼此的数据,这两个线程通过exchange方法交换数据,如果第一个线程先执行exchange方法,它会一直等待第二个线程也执行exchange方法,当两个线程都达到同步点时,这两个线程就可以交换数据,将本线程生产出来的数据传递给对方 多个线程协作交互数据

你可能感兴趣的:(java中的并发工具类)