synchronized加锁方式 大致三种 锁对象 锁this指针,当前对象 锁类.class synchronized的原理 底层主要是有monitor对象,获取锁时判断标志位是否为0,为0则进入临界区对应的指令monitorenter, 获得锁后标志位改为1,其它线程获取锁发现标志位1,进入阻塞状态,直到临界区线程出来是标志位-1变为0对应的指令monitorexit