java 多线程顺序打印ABC
2015-03-22 17:28
435 查看
public class Main { public static String lock = "A"; /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub Thread a = new A(); Thread b = new B(); Thread c = new C(); a.start(); b.start(); c.start(); } }
public class A extends Thread { @Override public void run() { // TODO Auto-generated method stub int k = 0; while (k < 10) { synchronized (Main.lock) { if (Main.lock.equals("A")) { System.out.print("A"); k++; Main.lock = "B"; } } } } }
public class B extends Thread { @Override public void run() { // TODO Auto-generated method stub int k = 0; while (k < 10) { synchronized (Main.lock) { if (Main.lock.equals("B")) { System.out.print("B"); k++; Main.lock = "C"; } } } } }
public class C extends Thread{ @Override public void run() { // TODO Auto-generated method stub int k = 0; while (k < 10) { synchronized (Main.lock) { if (Main.lock.equals("C")) { System.out.print("C"); k++; Main.lock = "A"; } } } } }结果:ABCABCABCABCABCABCABCABCABCABC
相关文章推荐
- JAVA 多线程开篇 -从按顺序打印ABC开始
- java多线程顺序打印ABC
- java多线程---顺序打印ABC的三种实现---ReentrantLock方式
- java多线程---顺序打印ABC的三种实现---join方法
- java多线程面试题:三个线程顺序打印ABC,重复10次
- 顺序打印ABC------java多线程的一道经典面试题
- java多线程---顺序打印ABC的三种实现---volatile方式
- 【多线程基础】- 多个线程顺序打印ABC
- Java并发编程--三个线程顺序打印ABC
- java wait notify notifyAll and 多线程顺序打印ABCD
- Windows多线程按顺序打印ABC
- java多线程编程之连续打印abc的几种解法
- 多线程(至少三个线程)分别打印A、B、C,要求按ABC的顺序循环打印10次。
- JAVA多线程打印ABC
- JAVA 多线程轮流打印ABC
- java多线程顺序打印ABCD四个字母
- Java多线程循环打印ABC 10次,可能是东半球最美解决方案了
- Java多线程 循环打印ABC 10次
- 多线程顺序打印ABC
- 多线程按顺序依次打印ABCD---java多线程的一道经典面试题