【Java 多线程 子线程 交替打印 奇偶数】Java 多线程 子线程 交替打印 奇偶数
public class Test{
public static void main(String args[]){
Num num = new Num(0);
Thread thOdd = new Thread(new ThOdd(num));
Thread thEdd = new Thread(new ThEdd(num));
thOdd.setName("odd");
thEdd.setName("edd");
thOdd.start();
thEdd.start();
}
}
class Num {
public int num = 0;
public Num(int num){
this.num = num ;
}
public synchronized void printOdd(){
System.out.println(Thread.currentThread().getName()+"------->"+(num++));
try{
this.notifyAll();
this.wait();
Thread.sleep(1000);
}catch(Exception e){
e.printStackTrace();
}
}
public synchronized void printEdd(){
System.out.println(Thread.currentThread().getName()+(num++));
try{
this.notifyAll();
this.wait();
Thread.sleep(1000);
}catch(Exception e){
e.printStackTrace();
}
}
}
class ThOdd implements Runnable{
private Num num ;
public ThOdd(Num num){
this.num = num ;
}
public void run(){
while(true){
num.printOdd();
}
}
}
class ThEdd implements Runnable{
private Num num ;
public ThEdd(Num num){
this.num = num ;
}
public void run(){
while(true){
num.printEdd();
}
}
}
推荐阅读
- 把一个xml节点信息递归的存到map中的方法
- 给定一个 ArrayList的一个对象,实现在这个集合中添加一个字符串
- J2SE|通过线程按照顺序循环输出ABC n次
- 如何控制线程执行的先后顺序
- weblogic|weblogic——Servlet failed with Exception
- J2SE/JAVA|DOS命令全集
- JVM_自动内存管理机制