使用两个线程竞争读锁,一个线程竞争写锁。看读写锁的获取率。
代码如下
public class ThreadDuXieSuo {
public static ReadWriteLocklock =new ReentrantReadWriteLock();
public static LockreadLock =lock.readLock();
public static LockwriteLock =lock.writeLock();
public static void main(String[] args) {
ExecutorService service = Executors.newFixedThreadPool(3);
service.execute(new Task(readLock,"读锁"));
service.execute(new Task(readLock,"读锁"));
service.execute(new Task(writeLock,"写锁"));
}
}
class Taskimplements Runnable {
private Locklock;
private Stringparam;
public Task(Lock lock, String param) {
this.lock = lock;
this.param = param;
}
@Override
public void run() {
while (true) {
try {