Used fair locks for Rooms and Users

This commit is contained in:
Andrey Terentev 2024-03-13 16:53:18 +07:00 committed by Andrey Terentev
parent 71409917d5
commit c13f566099
2 changed files with 2 additions and 2 deletions

View File

@ -22,7 +22,7 @@ public class RoomRepositoryImpl implements RoomRepository {
private final UserRepository userRepository;
private final PickerRepository pickerRepository;
private final Map<Node, Rooms> node2roomsMap = new HashMap<>();
private final ReadWriteLock lock = new ReentrantReadWriteLock();
private final ReadWriteLock lock = new ReentrantReadWriteLock(true);
@Override
public void create(Room room) throws RoomAlreadyExistException {

View File

@ -21,7 +21,7 @@ public class UserRepositoryImpl implements UserRepository {
private final NodeId2PickerModeCache nodeId2PickerModeCache;
private final Map<User, Set<Room>> usersMap = new HashMap<>();
private final Map<NodeRoomPath, Set<User>> roomUsers = new HashMap<>();
private final ReadWriteLock lock = new ReentrantReadWriteLock();
private final ReadWriteLock lock = new ReentrantReadWriteLock(true);
@Override
public Map<User, Boolean> linkWithRoom(Room room, Collection<User> users, boolean force) throws RoomAreFullException {