public class MySyn {
public synchronized void funcA(String str){
System.out.println(str+":");
System.out.println("start A...");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("...A end");
}
public synchronized void funcB(String str){
System.out.println(str+":");
System.out.println("start B...");
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("...B end");
}
}
public class Mythread implements Runnable {
private MySyn mysyn;
private String id;
public Mythread(MySyn syn, String id){
this.mysyn = syn;
this.id = id;
}
@Override
public void run() {
this.mysyn.funcA(id);
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
this.mysyn.funcB(id);
}
public static void main(String arg[]){
MySyn syn=new MySyn();
Thread t1 = new Thread(new Mythread(syn, "t1"));
Thread t2 = new Thread(new YourThread(syn, "t2"));
t1.start();
t2.start();
}
}
public class YourThread implements Runnable {
private MySyn mysyn;
private String id;
public YourThread(MySyn syn, String id){
this.mysyn = syn;
this.id=id;
}
@Override
public void run() {
this.mysyn.funcB(id);
this.mysyn.funcA(id);
}
}
t1: start A... ...A end t2: start B... ...B end t2: start A... ...A end t1: start B... ...B end
t1: start A... ...A end t1: start B... ...B end t2: start B... ...B end t2: start A... ...A end
t2: t1: start A... start B... ...A end t1: start B... ...B end t2: start A... ...B end ...A end
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有