Small synchronization optimization

This commit is contained in:
themode 2021-01-03 20:00:00 +01:00
parent 501ed1f0b2
commit 765c5be642

View File

@ -23,6 +23,7 @@ import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.*;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.CopyOnWriteArraySet;
import java.util.function.Consumer;
@ -33,7 +34,7 @@ import java.util.function.Consumer;
public final class ConnectionManager {
private final Set<Player> players = new CopyOnWriteArraySet<>();
private final Map<PlayerConnection, Player> connectionPlayerMap = Collections.synchronizedMap(new HashMap<>());
private final Map<PlayerConnection, Player> connectionPlayerMap = new ConcurrentHashMap<>();
// All the consumers to call once a packet is received
private final List<ClientPacketConsumer> receiveClientPacketConsumers = new CopyOnWriteArrayList<>();
@ -346,7 +347,7 @@ public final class ConnectionManager {
* @param connection the player connection
* @see PlayerConnection#disconnect() to properly disconnect a player
*/
public synchronized void removePlayer(@NotNull PlayerConnection connection) {
public void removePlayer(@NotNull PlayerConnection connection) {
final Player player = this.connectionPlayerMap.get(connection);
if (player == null)
return;