障碍器CyclicBarrier

障碍器CyclicBarrier

作用:它的作用就是会让所有线程都等待完成后才会继续下一步行动。

Java5中添加了障碍器类,为了适应一种新的设计需求,比如一个大型的任务,常常需要分配好多子任务去执行,只有当所有子任务都执行完成时候,才能执行主任务,这时候,就可以选择障碍器了。障碍器是多线程并发控制的一种手段。

  • CyclicBarrier(int parties)参与线程的个数
  • CyclicBarrier(int parties, Runnable barrierAction) Runnable参数是最后一个到达线程要做的任务
  • int await() 线程调用await()表示自己已经到达栅栏
  • int await(long timeout, TimeUnit unit)
    障碍器CyclicBarrier
    障碍器CyclicBarrier
    **主要工作原理,**通过构造函数创建一个指定屏障数的屏障类,在各线程中调用await(),调用后当前线程将被阻塞,直到调用的次数到指定屏障数后,所有阻塞的线程将恢复继续执行。
上一篇:Java多线程同步工具类之CyclicBarrier


下一篇:多线程(八、同步计数器-CyclicBarrier)