java闭锁_java8中CountDownLatch闭锁
重新修改程序,每次線程執行減少1
package com.gwolf;
import java.util.concurrent.CountDownLatch;
public class TestCountDownLatch {
public static void? main(String[] args) throws InterruptedException {
CountDownLatch countDownLatch = new CountDownLatch(5);
LatchDemo latchDemo = new LatchDemo(countDownLatch);
long start = System.currentTimeMillis();
for(int i = 0;i< 10;i++) {
new Thread(latchDemo).start();
}
countDownLatch.await();
long end = System.currentTimeMillis();
System.out.println("耗費時間:" + (end -start));
}
}
class LatchDemo implements Runnable {
//閉鎖
private CountDownLatch countDownLatch;
public LatchDemo(CountDownLatch countDownLatch) {
this.countDownLatch = countDownLatch;
}
@Override
public void run() {
synchronized (this) {
try {
for (int i = 0; i < 500000; i++) {
if (i % 2 == 0) {
System.out.println(i);
}
}
} finally {
countDownLatch.countDown();
}
}
}
}
總結
以上是生活随笔為你收集整理的java闭锁_java8中CountDownLatch闭锁的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql 1366 hy000_ERR
- 下一篇: java 两个日期的天数_java计算两