package com.cxy.juc;
import java.util.concurrent.CountDownLatch;
public class CountDownlatchDemo {
public static void main(String[] args) {
CountDownLatch countDownLatch =new CountDownLatch(6);
for (int i = 1; i <=6 ; i++) {
new Thread(()->{
System.out.println("1"+"\t"+Thread.currentThread().getName());
countDownLatch.countDown();
},Count.fore(i).getMsg()).start();
}
try {
countDownLatch.await();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("2");
}
}
package com.cxy.juc;
import com.sun.javafx.scene.control.behavior.TwoLevelFocusBehavior;
public enum Count {
ONE (1,"A"),TWO(2,"B"),THREE(3,"C"),FOUR(4,"D"),FIVE(5,"E"),SIX(6,"F");
private Integer num;
private String msg;
Count(Integer num, String msg) {
this.num = num;
this.msg = msg;
}
public Integer getNum() {
return num;
}
public void setNum(Integer num) {
this.num = num;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public static Count fore(int num){
Count[] myArray =Count.values();
for (Count count:myArray){
if (num ==count.getNum()){
return count;
}
}
return null;
}
}