synchronized的用法

   synchronized是锁,可以用来锁静态方法,也可以用来锁非静态方法,还可以用来锁静态代码块。

   在JDK6之后,synchronized已经被优化的很好用了,

   synchronized在JDK中有demo,它的底层原理是,每个java对象中都有monitor,其中monitorenter,是记录锁开始的代码块,monitorexit,是记录锁结束的代码块。当计数器为0,表示锁可以获取,当计数器大于1时,表示锁被占用,其他的线程调用这块代码,需要阻塞等候

posted @ 2020-03-17 11:52  Mop猎人  阅读(122)  评论(0编辑  收藏  举报