java 多线程中synchronized 代码块

代码块就不用synchronized 修改方法,在方法里面用。

 比如我现在2个线程都访问MyThreadTest3对象的test()方法,在上面的for循环里面2个线程都能同时访问。

如果A线程先访问到下面代码块,那么B线程就要等待A线程结束之后在访问下面的代码块。

 

所以能够知道

1.A线程访问synchronized代码块的时候,B线程还是能够访问方法非synchronized外的方法的。但是如果B要访问synchronized的话,必须要等A访问结束之后,才能访问

 

posted @ 2018-04-13 17:51  tangw  阅读(139)  评论(0编辑  收藏  举报