Stop using monitored locks in Server
This commit is contained in:
@@ -38,13 +38,6 @@ import constants.net.ServerConstants;
|
||||
import net.netty.LoginServer;
|
||||
import net.packet.Packet;
|
||||
import net.server.audit.ThreadTracker;
|
||||
import net.server.audit.locks.MonitoredLockType;
|
||||
import net.server.audit.locks.MonitoredReadLock;
|
||||
import net.server.audit.locks.MonitoredReentrantReadWriteLock;
|
||||
import net.server.audit.locks.MonitoredWriteLock;
|
||||
import net.server.audit.locks.factory.MonitoredReadLockFactory;
|
||||
import net.server.audit.locks.factory.MonitoredReentrantLockFactory;
|
||||
import net.server.audit.locks.factory.MonitoredWriteLockFactory;
|
||||
import net.server.channel.Channel;
|
||||
import net.server.coordinator.session.IpAddresses;
|
||||
import net.server.coordinator.session.SessionCoordinator;
|
||||
@@ -79,6 +72,9 @@ import java.util.concurrent.Executors;
|
||||
import java.util.concurrent.Future;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
import java.util.concurrent.locks.Lock;
|
||||
import java.util.concurrent.locks.ReadWriteLock;
|
||||
import java.util.concurrent.locks.ReentrantLock;
|
||||
import java.util.concurrent.locks.ReentrantReadWriteLock;
|
||||
|
||||
import static java.util.concurrent.TimeUnit.*;
|
||||
|
||||
@@ -117,16 +113,14 @@ public class Server {
|
||||
|
||||
private final List<List<Pair<String, Integer>>> playerRanking = new LinkedList<>();
|
||||
|
||||
private final Lock srvLock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.SERVER);
|
||||
private final Lock disLock = MonitoredReentrantLockFactory.createLock(MonitoredLockType.SERVER_DISEASES);
|
||||
private final Lock srvLock = new ReentrantLock();
|
||||
private final Lock disLock = new ReentrantLock();
|
||||
|
||||
private final MonitoredReentrantReadWriteLock wldLock = new MonitoredReentrantReadWriteLock(MonitoredLockType.SERVER_WORLDS, true);
|
||||
private final MonitoredReadLock wldRLock = MonitoredReadLockFactory.createLock(wldLock);
|
||||
private final MonitoredWriteLock wldWLock = MonitoredWriteLockFactory.createLock(wldLock);
|
||||
private final Lock wldRLock;
|
||||
private final Lock wldWLock;
|
||||
|
||||
private final MonitoredReentrantReadWriteLock lgnLock = new MonitoredReentrantReadWriteLock(MonitoredLockType.SERVER_LOGIN, true);
|
||||
private final MonitoredReadLock lgnRLock = MonitoredReadLockFactory.createLock(lgnLock);
|
||||
private final MonitoredWriteLock lgnWLock = MonitoredWriteLockFactory.createLock(lgnLock);
|
||||
private final Lock lgnRLock;
|
||||
private final Lock lgnWLock;
|
||||
|
||||
private final AtomicLong currentTime = new AtomicLong(0);
|
||||
private long serverCurrentTime = 0;
|
||||
@@ -135,6 +129,16 @@ public class Server {
|
||||
private boolean online = false;
|
||||
public static long uptime = System.currentTimeMillis();
|
||||
|
||||
private Server() {
|
||||
ReadWriteLock worldLock = new ReentrantReadWriteLock(true);
|
||||
this.wldRLock = worldLock.readLock();
|
||||
this.wldWLock = worldLock.writeLock();
|
||||
|
||||
ReadWriteLock loginLock = new ReentrantReadWriteLock(true);
|
||||
this.lgnRLock = loginLock.readLock();
|
||||
this.lgnWLock = loginLock.writeLock();
|
||||
}
|
||||
|
||||
public int getCurrentTimestamp() {
|
||||
return (int) (Server.getInstance().getCurrentTime() - Server.uptime);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user