您的位置:首页 > 编程语言 > Java开发

java并发测试代码

2017-01-25 10:02 302 查看
import java.util.concurrent.CyclicBarrier;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class RuntimeTest {

public static void main(String[] args) {
int count = 100000;//10万并发
CyclicBarrier cyclicBarrier = new CyclicBarrier(count);
ExecutorService executorService = Executors.newFixedThreadPool(count);
long now = System.currentTimeMillis();
for (int i = 0; i < count; i++)
executorService.execute(new RuntimeTest().new Task(cyclicBarrier));

executorService.shutdown();
while (!executorService.isTerminated()) {
try {
Thread.sleep(10);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
long end = System.currentTimeMillis();
System.out.println("All is finished!---------"+(end-now));
}

public class Task implements Runnable {
private CyclicBarrier cyclicBarrier;

public Task(CyclicBarrier cyclicBarrier) {
this.cyclicBarrier = cyclicBarrier;
}

@Override
public void run() {
try {
// 等待所有任务准备就绪
cyclicBarrier.await();
// 测试内容
System.out.println("hello word");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: