CyclicBarrier类测试
Posted dengw125792
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CyclicBarrier类测试相关的知识,希望对你有一定的参考价值。
package t1;
import java.util.concurrent.CyclicBarrier;
public class TestThread26 extends Thread {
private CyclicBarrier cy;
public TestThread26(CyclicBarrier cy) {
this.cy = cy;
}
@Override
public void run() {
try {
System.out.println(Thread.currentThread().getName() + "开始等待其他线程");
cy.await();
System.out.println(Thread.currentThread().getName() + "开始执行");
Thread.sleep(2000);
System.out.println(Thread.currentThread().getName() + "执行完成");
} catch (Exception e) {
}
}
public static void main(String[] args) {
int cnt = 2;
CyclicBarrier cy = new CyclicBarrier(2);
for (int i = 0; i < cnt; i++) {
System.out.println("创建工作线程" + i);
TestThread26 t = new TestThread26(cy);
t.start();
}
}
}
测试结果:
以上是关于CyclicBarrier类测试的主要内容,如果未能解决你的问题,请参考以下文章
死磕 java同步系列之CyclicBarrier源码解析——有图有真相
CountDownLatch和CyclicBarrier模拟同时并发请求
CountDownLatch和CyclicBarrier模拟同时并发请求