synchronized对静态方法,普通方法加锁的区别
#synchronized通过售票的案例来分析
##synchronized对普通方法加锁锁住的是当前对象,如果多个对象同时访问的时候无法保证线程。
###对普通方法加锁
当有一个当有一个对象的时候运行结果:#
###多个对象的运行结果
我们可以发现出现了两次票数为6
##对静态方法加锁
#不同对象运行结果
我们可以发现并没有上次的问题,一直是线程t1运行,线程t1占用类锁。
#synchronized通过售票的案例来分析
##synchronized对普通方法加锁锁住的是当前对象,如果多个对象同时访问的时候无法保证线程。
###对普通方法加锁
当有一个当有一个对象的时候运行结果:#
###多个对象的运行结果
我们可以发现出现了两次票数为6
##对静态方法加锁
#不同对象运行结果
我们可以发现并没有上次的问题,一直是线程t1运行,线程t1占用类锁。