ReentrantLock怎么变成公平锁
时间: 2024-01-12 21:23:03 浏览: 101
多线程(11)ReentrantLock公平锁与非公平锁(修改)1
ReentrantLock默认是非公平锁,但可以通过将它的构造函数的参数设置为true,将其变成公平锁。
例如,创建一个公平锁的ReentrantLock对象可以这样写:
```
ReentrantLock fairLock = new ReentrantLock(true);
```
这里的true参数表示将锁设置为公平锁。公平锁会按照请求的先后顺序分配锁,保证所有线程都有机会获得锁。而非公平锁则不保证请求锁的线程能够获得锁,可能会导致某些线程一直无法获得锁。
阅读全文