CyclicBarrierとPhaserの2つの例を書いてください。
1つはCyclicBarrierです。スレッドは特定の数に達してから一緒に実行されます
public class Test_Cyclic {
public static void main(String[] args) {
CyclicBarrier cyclicBarrier = new CyclicBarrier(3, () -> System.out.println("执行"));
for (int i = 0; i < 6; i++) {
final int temp = i;
new Thread(){
@Override
public void run() {
super.run();
System.out.println("线程" +temp + ":开始");
try {
cyclicBarrier.await();
System.out.println("线程" +temp + ":结束");
} catch (InterruptedException e) {
e.printStackTrace();
} catch (BrokenBarrierException e) {
e.printStackTrace();
}
}
}.start();
}
}
}
結果: