synchronized作用于静态方法和非静态方法的区别
· 非静态方法:给对象加锁(可以理解为给这个对象的内存上锁,注意 只是这块内存,其他同类对象都会有各自的内存锁),这时候在其他一个以上线程中执行该对象的这个同步方法(注意:是该对象)就会产生互斥 · 静态方法: 相当于在类上加锁(*.class位于代码区,静态方法位于静态区域,这个类产生的对象公用这个静态方法,所以这块内存,N个对象来竞争),这时候,只要是这个类产生的对象,在调用这个静态方法时都会产生互斥。即该类所有的对象都共享一把锁。
帖子还没人回复快来抢沙发
【校招VIP】java 关于锁常见面试题
叉树前序遍历的递归和非递归实现?
一棵具有n个结点的二叉树,若它有m个叶子结点,则该二叉树中度为1的结点个数是多少?
北京有一条1公里长的街道,你认为一天能收多少钱的停车费?
用一条线(可以是折线)分割多边形为面积相等的两部分
帖子还没人回复快来抢沙发