1.读写锁的使用
写的时候使用锁
读的时候不使用锁
public class ReadWrite {
private ReentrantReadWriteLock lock = new ReentrantReadWriteLock();
private Lock readLock;
private Lock writeLock;
private int num = -1;
public ReadWrite() {
readLock = lock.readLock();
writeLock = lock.writeLock();
}
public void read(){
while(true){
try{
readLock.lock();
Thread.sleep(1000);
}catch(Exception e){
e.printStackTrace();
}finally{
readLock.unlock();
}
}
}
public void write(){
while(true){
try{
writeLock.lock();
Thread.sleep(1000);
}catch(Exception e){
e.printStackTrace();
}finally{
writeLock.unlock();
}
}
}