注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

love3400wind的blog

like

 
 
 

日志

 
 
 
 

多线程题:有三个线程A,B,C, A线程输出A,B线程输出B,C线程输出C  

2013-05-30 09:11:20|  分类: IT |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
多线程题:有三个线程A,B,C,  A线程输出A,B线程输出B,C线程输出C
编程要求:在屏幕上打出10个ABC串,即 ABCABCABCABCABCABCABCABCABCABC

import java.lang.Thread;
import java.lang.InterruptedException;
import java.util.concurrent.Semaphore;
public class Main{
private static Semaphore A = new Semaphore(1);
private static Semaphore B = new Semaphore(1);
private static Semaphore C = new Semaphore(1);

static class ThreadA extends Thread{
public void run() {
for (int i=0; i<10; i++){
try{
A.acquire();
} catch(InterruptedException e) {}
System.out.print("A");
B.release();
}
}
}

static class ThreadB extends Thread {
public void run() {
for(int i=0; i<10; i++) {
try {
B.acquire();
} catch (InterruptedException e) {

}
System.out.print("B");
C.release();
}
}
}

static class ThreadC extends Thread{
public void run() {
for (int i=0; i<10; i++) {
try {
C.acquire();
} catch(InterruptedException e) {}
System.out.println("C");
A.release();
}
}
}

public static void main(String [] args) throws InterruptedException{
B.acquire();
C.acquire();

new ThreadA().start();
new ThreadB().start();
new ThreadC().start();

}

}


  评论这张
 
阅读(900)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017