首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

java的锁机制解决思路

2012-01-19 
java的锁机制在同一个类中能不能同时加两个不同的锁?比如一个是锁成员a的读写,另一个是锁成员b的读写?[解

java的锁机制
在同一个类中能不能同时加两个不同的锁?比如一个是锁成员a的读写,另一个是锁成员b的读写?

[解决办法]
这样?
Object a=new Object();
Object b=new Object();

synchronized(a)
{

}

synchronized(b)
{

}
[解决办法]
可以的啊
synchronized(a){.......}
锁是加在对象a上的 只不过不能对一个对象第二次上锁而已 与这个语句包含在哪个对象里面无关

除非是
public synchronized int myFunction(){...}
这种写法才是把锁加载包含这个函数的对象上 就相当于
public int myFunction(){
synchronized(this){.......}
}
[解决办法]
可以,不过现在都不用synchronized了,都用ReentrantLock了.

热点排行