import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.locks.Condition;
import java.util.concurrent.locks.Lock;
import java.util.concurrent.locks.ReentrantLock;
public class Q56_1 {
private static Lock lock=new ReentrantLock();
private static Condition subThreadCondition=lock.newCondition();
private static boolean bBooleanSubThread=false;
public static void main(String[] args) {
ExecutorService threadPool=Executors.newFixedThreadPool(3);
threadPool.execute(new Runnable(){
public void run(){
for(int i=0;i<50;i++){
lock.lock();
if(!bBooleanSubThread){
try {
subThreadCondition.await();
for(int j=0;j<10;j++){
System.out.println(Thread.currentThread().getName()+"j="+j);
}
bBooleanSubThread =false;
subThreadCondition.signal();
} catch (Inter
第十天 :让一线程执行10次,然后让二线程执行10,然后一执行,二执行,这样循环50次,编写程序
最新推荐文章于 2021-10-11 21:17:20 发布