比如如下代码,降级了并没有并发执行啊?
public void put(Object data){
rwl.writeLock().lock();
rwl.readLock().lock();
System.out.println(Thread.currentThread().getName() + " be ready to write data!");
try {
Thread.sleep((long)(Math.random()*1000));
} catch (InterruptedException e) {
e.printStackTrace();
}
this.data = data;
System.out.println(Thread.currentThread().getName() + " have write data: " + data);
rwl.readLock().unlock();
rwl.writeLock().unlock();
}
输出:
Thread-0 be ready to write data!
Thread-0 have write data: 1103
Thread-2 be ready to write data!
Thread-2 have write data: 4531
Thread-1 be ready to write data!
Thread-1 have write data: 2188
也并没有并发执行啊