同步 怎么理解这两个的区别呀
synchronized
------------------
public ForumThreadState getState() {
return state;
}
public synchronized void setState(ForumThreadState forumThreadState) {
this.state = forumThreadState;
}
**********************************
ReentrantReadWriteLock
-------------------------
public ForumThreadState getState() {
read.lock();
try {
return state;
} finally {
read.unlock();
}
}
public void setState(ForumThreadState forumThreadState) {
write.lock();
try {
this.state = forumThreadState;
} finally {
write.unlock();
}
}
在网上找好多资料 都说 ReentrantReadWriteLock 的性能比 synchronized 高?
我看不出如果是这样都一样的 我用synchronized 只锁住set方法 读取的时候 用get没有任何锁
并不影响读取
望高手 帮忙解释下