synchronized作用于静态方法和非静态方法的区别
· 非静态方法:给对象加锁(可以理解为给这个对象的内存上锁,注意 只是这块内存,其他同类对象都会有各自的内存锁),这时候在其他一个以上线程中执行该对象的这个同步方法(注意:是该对象)就会产生互斥 · 静态方法: 相当于在类上加锁(*.class位于代码区,静态方法位于静态区域,这个类产生的对象公用这个静态方法,所以这块内存,N个对象来竞争),这时候,只要是这个类产生的对象,在调用这个静态方法时都会产生互斥。即该类所有的对象都共享一把锁。
帖子还没人回复快来抢沙发
【校招VIP】java 关于锁常见面试题
多线程中sleep()和wait()方法的区别
cookies,sessionStorage 和 localStorage 的区别?
什么是 Cookie?它的作用是什么?
怎么理解产品经理与技术研发之间的关系?
帖子还没人回复快来抢沙发