一.锁重入 package com.roocon.thread.t6; public class Demo { /* 当第一个线程A拿到当前实例锁后,进入a方法,那么,线程A还能拿到被当前实例所加锁的另一个 同步方法b吗?是不是只有当线程A释放了a方法的同步锁后,才可以去获取b方法的同步锁呢? */ public synchronized void a(){ System.out.println("a"); b(); } public synchronized void b(){ Sy
package demo1; /** * synchronized锁重入 * Created by liudan on 2017/6/5. */ public class MyThread5_synchronized1 { /** * 父子类同步必须 都 使用synchronized关键字 */ static class Main { public int count = 10; public synchronized void operationSub() { try { count--; S
Synchronized锁重入: 当一个线程得到一个对象锁后,再次请求此对象锁时是可以再次得到该对象的锁.这也证明在一个Synchronized方法/块的内部调用本类的其他Synchronized方法/块时候,是永远可以得到锁的. public class SyncReUseService { synchronized public void service1(){ System.out.println("service1"); service2(); } synchronized p
关键字在使用synchronized时,当线程得到一个对象锁时,这时这个线程再次请求此对象锁是可以拿到的,也就说明同步方法之间是可以进行互相调用的, package com.cky.bean; /** * Created by chenkaiyang on 2017/12/5. */ public class Service { synchronized public void service1() { System.out.println("service1"); service2(