synchronized作用于静态方法和非静态方法的区别
· 非静态方法:给对象加锁(可以理解为给这个对象的内存上锁,注意 只是这块内存,其他同类对象都会有各自的内存锁),这时候在其他一个以上线程中执行该对象的这个同步方法(注意:是该对象)就会产生互斥 · 静态方法: 相当于在类上加锁(*.class位于代码区,静态方法位于静态区域,这个类产生的对象公用这个静态方法,所以这块内存,N个对象来竞争),这时候,只要是这个类产生的对象,在调用这个静态方法时都会产生互斥。即该类所有的对象都共享一把锁。
帖子还没人回复快来抢沙发
【校招VIP】java 关于锁常见面试题
从浏览器输入URL到展示页面的全流程是怎么样的?
分析一下,小程序为什么不能分享朋友圈?
怎么理解产品经理与技术研发之间的关系?
用一条线(可以是折线)分割多边形为面积相等的两部分
帖子还没人回复快来抢沙发