synchronized代码块对线程的访问进行上锁

来源:互联网 发布:淘宝卖家说没货不发货 编辑:程序博客网 时间:2024/06/05 11:36
public class ThreadTest5{public static void main(String args[]){MeTest metest=new MeTest();MeThreadTest m=new MeThreadTest(metest);MeThreadTest2 e=new MeThreadTest2(metest);m.start();e.start();}}class MeTest{private Object obj=new Object();public void method1(){synchronized(obj)//synchronized代码块{for(int i=0;i<10;i++){try {Thread.sleep((long)(Math.random()*1000));} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println("me: "+i);}}}public void method2(){synchronized(obj){for(int i=0;i<10;i++){try {Thread.sleep((long)(Math.random()*1000));} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}System.out.println("you: "+i);}}}}class MeThreadTest extends Thread{private MeTest metest;public MeThreadTest(MeTest metest){this.metest=metest;}@Overridepublic void run() {// TODO Auto-generated method stubthis.metest.method1();}}class MeThreadTest2 extends Thread{private MeTest metest;public MeThreadTest2(MeTest metest){this.metest=metest;}@Overridepublic void run() {// TODO Auto-generated method stubthis.metest.method2();}}

0 0
原创粉丝点击